Beefy Boxes and Bandwidth Generously Provided by pair Networks
We don't bite newbies here... much

Re^3: Pattern matching with qr// and modifiers

by JavaFan (Canon)
on May 05, 2012 at 09:47 UTC ( #969031=note: print w/ replies, xml ) Need Help??

in reply to Re^2: Pattern matching with qr// and modifiers
in thread Pattern matching with qr// and modifiers

I find it surprising that adding the modifier back later has no effect, and triggers no warnings. I guess Iíll just have to remember that once a regex has been compiled with qr//, its d, i, m, s, and x settings are thereafter immutable.
Well, isn't that the point of having a compiled regexp? Now, if you compile a regexp, you know exactly what you have. Otherwise, if I have a compiled regexp, I still don't know what it does, because modifiers can be applied. It also means that if you would do something like:
my $pat = gimme_pat(); # Some method returning a qr if ($str =~ /^ $pat $ # Anchor pattern/x) { ... }
will break if $pat uses spaces.

Comment on Re^3: Pattern matching with qr// and modifiers
Select or Download Code
Re^4: Pattern matching with qr// and modifiers
by Athanasius (Abbot) on May 05, 2012 at 10:06 UTC

    Yes, this makes sense; but that “quotes (and possibly compiles)” in perlop is still worrying me. If I use qr// but it only quotes (and doesn’t compile), then, as you say, I still don’t really know what it does, do I?


    Athanasius <°(((><contra mundum

Log In?

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

How do I use this? | Other CB clients
Other Users?
Others lurking in the Monastery: (13)
As of 2015-03-27 19:41 GMT
Find Nodes?
    Voting Booth?

    When putting a smiley right before a closing parenthesis, do you:

    Results (619 votes), past polls