Beefy Boxes and Bandwidth Generously Provided by pair Networks
P is for Practical
 
PerlMonks  

Re: RE: Quantifiers in regular expressions

by ninja-joe (Monk)
on May 19, 2004 at 19:59 UTC ( #354733=note: print w/ replies, xml ) Need Help??


in reply to RE: Quantifiers in regular expressions
in thread Quantifiers in regular expressions

Here's a simple modification to the example code that will show what the regex matched when you typed it in:

#!/usr/bin/perl while(<>) { chomp; # chomp so this next output is pretty. # newlines aren't discarded when you <> print "\"$1\" was matched out of \"$_\"" if m/(your_pattern)/; }
Be sure to include the parenthesis around the entire regex that way it will save what it matches in $1.

Do recall that while the regex operators are greedy by default you can suffix them with ? and they'll go to nongreedy. An example:
#!/usr/bin/perl while(<>) { chomp; print "\"$1\" was matched out of \"$_\"\n" if m/(\w{5}?)/; }
This will match "mywor" out of "myword"

Have fun regexing.


Comment on Re: RE: Quantifiers in regular expressions
Select or Download Code
Re: Re: RE: Quantifiers in regular expressions
by Roy Johnson (Monsignor) on May 19, 2004 at 20:25 UTC
    Putting a ? on a quantifier that isn't variable-length is like having any color car you want, as long as it's black. There's no difference between a greedy and a non-greedy {5}.

    A greedy quantifier will take as many characters as it can, and then start backtracking until whatever follows it matches. A non-greedy one will take as few characters as it can, and then take more until whatever is supposed to follow it is found.


    The PerlMonk tr/// Advocate

Log In?
Username:
Password:

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

How do I use this? | Other CB clients
Other Users?
Others chanting in the Monastery: (14)
As of 2015-07-06 15:44 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 (77 votes), past polls