Jayakumar Rajagopal wrote: > friends, > ************************ > script : > > $_='as great as perl'; > print $& ."\n" if (/\beat/); > print $& ."\n" if (/\bgre/); > > output : > gre > *********************** > Why 'boundary' assertion does not match in end of word , but only the > start of word? >
that's because you ask to match the boundary at the start of your word. try: #!/usr/bin/perl -w use strict; $_ = 'as great as perl'; print $&,"\n" if(/eat\b/); print $&,"\n" if(/\bgre/); __END__ prints: eat gre david -- s$s*$+/<tgmecJ"ntgR"tgjvqpC"vuwL$;$;=qq$ \x24\x5f\x3d\x72\x65\x76\x65\x72\x73\x65 \x24\x5f\x3b\x73\x2f\x2e\x2f\x63\x68\x72 \x28\x6f\x72\x64\x28\x24\x26\x29\x2d\x32 \x29\x2f\x67\x65\x3b\x70\x72\x69\x6e\x74 \x22\x24\x5f\x5c\x6e\x22\x3b\x3b$;eval$; -- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED] <http://learn.perl.org/> <http://learn.perl.org/first-response>
