#!/usr/bin/perl use strict; use warnings; use Win32::OLE; use Win32::OLE::Enum; my $word = Win32::OLE->GetActiveObject('Word.Application'); my $document = $word->ActiveDocument; my $paragraphs = $document->Paragraphs(); my $enumerate = Win32::OLE::Enum->new($paragraphs); while( my $paragraph = $enumerate->Next()) { my $style = $paragraph->{Style}->{NameLocal}; my $text = $paragraph->{Range}->{Text}; $text =~ tr{\n\r}{}d; $text =~ tr{\x0b}{\n}; printf qq{%s -> ***%s***\n}, $style, $text; }