Beefy Boxes and Bandwidth Generously Provided by pair Networks
Perl: the Markov chain saw
 
PerlMonks  

Re^2: qr// and user provided regex patterns...

by misterMatt (Novice)
on Jul 31, 2009 at 19:58 UTC ( [id://784983]=note: print w/replies, xml ) Need Help??


in reply to Re: qr// and user provided regex patterns...
in thread qr// and user provided regex patterns...

Using the eval works great for matches : $pattern = eval "qr$pattern" or die $@; But of course, when I do a 'substitution pattern' s///, it fails because it looks like eval "qrs/stuff/morestuff/. So I tried adding a bang, to wrap around the interpolated variable in the original : $pattern = eval "qr!$pattern!" or die $@; But now my patterns fail to match anything. Example:
s/Bill Clinton/The ex-President/gi on Bill Clinton is the ex-President +. bill clinton. results in Failure.

Replies are listed 'Best First'.
Re^3: qr// and user provided regex patterns...
by ikegami (Patriarch) on Aug 04, 2009 at 23:53 UTC

    Using the eval works great for matches : $pattern = eval "qr$pattern" or die $@;

    No, it doesn't.

    First of all, it doesn't work at all if $pattern actually contains a pattern.

    And then there are issues with improper escaping. If you pass /a\+/, it won't match "a" followed by "+" as desired.

Log In?
Username:
Password:

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

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

    No recent polls found