Beefy Boxes and Bandwidth Generously Provided by pair Networks
Do you know where your variables are?

Re: Special Variables and Multiple Regexp Matching

by GrandFather (Sage)
on Nov 18, 2013 at 00:39 UTC ( #1063024=note: print w/ replies, xml ) Need Help??

in reply to Special Variables and Multiple Regexp Matching

As a general thing providing a focused working stand alone sample script illustrating the problem will get you better answers. Consider:

use strict; use warnings; my @lines = split /\n/, <<LINES; token token token taken token tiki LINES chomp @lines; for my $line (@lines) { print "$line:\n"; while ($line =~ /token/gi) { print " >$`|$'<\n"; } }


token token token: >| token token< >token | token< >token token |< taken token tiki: >taken | tiki<

while (lc($line) =~ /token/g) { loops until killed because each time through the loop lc($line) is re-evaluated so the regular expression restarts, so don't do that. So long as $line isn't changed the /g makes the regular expression carry on from where it left off last time through the loop, which is what you want.

True laziness is hard work
Comment on Re: Special Variables and Multiple Regexp Matching
Select or Download Code

Log In?

What's my password?
Create A New User
Node Status?
node history
Node Type: note [id://1063024]
and the web crawler heard nothing...

How do I use this? | Other CB clients
Other Users?
Others contemplating the Monastery: (5)
As of 2016-05-27 00:06 GMT
Find Nodes?
    Voting Booth?