Beefy Boxes and Bandwidth Generously Provided by pair Networks
Welcome to the Monastery
 
PerlMonks  

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"; } }

Prints:

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?
Username:
Password:

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

How do I use this? | Other CB clients
Other Users?
Others avoiding work at the Monastery: (4)
As of 2015-07-04 05:05 GMT
Sections?
Information?
Find Nodes?
Leftovers?
    Voting Booth?

    The top three priorities of my open tasks are (in descending order of likelihood to be worked on) ...









    Results (57 votes), past polls