Beefy Boxes and Bandwidth Generously Provided by pair Networks
Clear questions and runnable code
get the best and fastest answer

RE: RE: Quantifiers in regular expressions

by pkn (Initiate)
on Jul 20, 2000 at 04:19 UTC ( #23321=note: print w/replies, xml ) Need Help??

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

I don't understand this: $string = "<foo>...</foo><bar>...</bar>"; # This matches <foo></bar>, not what we want. $string =~ /\<.*\>(.*)\</.*\>/; How does it match? And I thought that the matching operator was m//, not m///. What does m/// do?
  • Comment on RE: RE: Quantifiers in regular expressions

Replies are listed 'Best First'.
RE: RE: RE: Quantifiers in regular expressions
by le (Friar) on Jul 20, 2000 at 11:30 UTC
    Yeah, AM escapes the wrong chars. Let's put it right. If you say:
    $string =~ /<.*>(.*)<\/.*>/;
    on a string "<foo>...</foo><bar>...</bar>" you get everything between "<foo>" and "</bar>", because the "*" modifier is "greedy", which means it tries to match as much as possible. A "." in a regex matches anything, so ".*" matches until the end of the string. Then the rest of the regex is evaluated, done by backtracking (the regex machine is now at the end of the string and goes back one by one until it finds a match). I hope this was correct.

    Damn HTML escaping :) I fixed it, so the strings actually show up.
Re: RE: RE: Quantifiers in regular expressions
by Anonymous Monk on Sep 24, 2002 at 23:05 UTC
    This is maching tag delimiters and their belongond text. Let`s say you have text in H1 format <h1>This is my text</h1> and you want to replace both the heading and the text with only one step. Then you`ll need such a string as the mentioned above to find a matching pair.

Log In?

What's my password?
Create A New User
Node Status?
node history
Node Type: note [id://23321]
[marto]: finding bugs, either in the CPU layer or hypervisor, finding undocumented instructions
[zentara]: are you talikng about perf?
[Discipulus]: i miss what an undocumented instructions can be, and how can be used
[zentara]: perf
[marto]: X86_instruction_li stings
[marto]: Illegal_opcode
[zentara]: marto arn't those NSA secrets? :-)

How do I use this? | Other CB clients
Other Users?
Others examining the Monastery: (10)
As of 2017-07-28 12:02 GMT
Find Nodes?
    Voting Booth?
    I came, I saw, I ...

    Results (428 votes). Check out past polls.