Beefy Boxes and Bandwidth Generously Provided by pair Networks
laziness, impatience, and hubris
 
PerlMonks  

Re^2: Understanding a portion of perlretut

by choroba (Cardinal)
on Dec 09, 2015 at 16:57 UTC ( [id://1149798]=note: print w/replies, xml ) Need Help??


in reply to Re: Understanding a portion of perlretut
in thread Understanding a portion on the Perlretut

But that means that the regex could also be fixed without recourse to \G, by simply anchoring it to the start of the string:
while ($dna =~ /^(\w\w\w)*?TGA/g)
With ^ instead of \G, the regex would match only once, even with the /g modifier: because after a succesful match, the next match starts when the previous one ended, and ^ can't match there. With \G, though, you can get all the matches from the loop.
#! /usr/bin/perl use warnings; use strict; use feature qw{ say }; my $dna = join q(), qw( TGA TGA ATG AGA ); for my $regex (qr/(\w\w\w)*?TGA/, qr/^(\w\w\w)*?TGA/, qr/\G(\w\w\w)*?TGA/, ) { while ($dna =~ /$regex/g) { say "TGA with $regex: ", pos $dna; } }
($q=q:Sq=~/;[c](.)(.)/;chr(-||-|5+lengthSq)`"S|oS2"`map{chr |+ord }map{substrSq`S_+|`|}3E|-|`7**2-3:)=~y+S|`+$1,++print+eval$q,q,a,

Log In?
Username:
Password:

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

How do I use this?Last hourOther CB clients
Other Users?
Others chanting in the Monastery: (3)
As of 2024-04-20 02:54 GMT
Sections?
Information?
Find Nodes?
Leftovers?
    Voting Booth?

    No recent polls found