in reply to Word find and replace with bold

The \b sequence is used in regular expressions to find the boundary between "word characters" and "non-word characters". That's often useful to mark the beginning and end of a word.

if (/\b$some_regex\b) { ... }

But Word documents aren't plain text files. So I don't know how well plain text regexes will work.


See the Copyright notice on my home node.

Perl training courses

Replies are listed 'Best First'.
Re^2: Word find and replace with bold
by Selvakumar (Scribe) on Jul 23, 2009 at 12:18 UTC
    This is my below code and i need to apply the word boundary in find statement or any other method to search the text with regular expressions.
    use strict; use Win32::OLE; use Win32::OLE::Const 'Microsoft Word'; my $word = Win32::OLE->new('Word.Application'); $word->{Visible} = 1; my $document=$word->Documents->Open('c\ch01.doc'); $word->Selection->HomeKey(wdStory); $word->Selection->Find->{'Text'}=$text; $word->Selection->Find->Replacement->{'Text'}=$text; $word->Selection->Find->Replacement->Font->{'Bold'}=1; $word->Selection->Find->Execute({Replace=>wdReplaceAll}); } $word-> ActiveDocument->SaveAs('c:\ch01_updated.doc'); $document-> Close(); $word-> Quit();

      Your program contains syntax errors and can't run in the state you posted it.