Beefy Boxes and Bandwidth Generously Provided by pair Networks
Keep It Simple, Stupid
 
PerlMonks  

Re: Perl Idioms Explained - @ary = $str =~ m/(stuff)/g

by CountZero (Bishop)
on Sep 15, 2003 at 13:43 UTC ( #291552=note: print w/ replies, xml ) Need Help??


in reply to Perl Idioms Explained - @ary = $str =~ m/(stuff)/g

One should perhaps add, that the real reason why this magic works is because "=~" binds more thightly than "=", so the regex gets done first and then its results are evaluated in list-context (which is provided by using an array as an L-value).

CountZero

"If you have four groups working on a compiler, you'll get a 4-pass compiler." - Conway's Law


Comment on Re: Perl Idioms Explained - @ary = $str =~ m/(stuff)/g
Select or Download Code
Re: Re: Perl Idioms Explained - @ary = $str =~ m/(stuff)/g
by tachyon (Chancellor) on Sep 15, 2003 at 14:02 UTC

    To be completely pedantic the reason it 'works' is that they coded it that way! The reason it works without needing parens is as you say.

    The precedence order is why you need to do stuff like this:

    (my $fix_up = $old_str ) =~ s/this/that/g;

    But that is another idiom I guess. This one lets you set declare $fix_up, set it to $old_str, and then modify $fix_up in one line, while leaving $old_str intact for future reference.....

    cheers

    tachyon

    s&&rsenoyhcatreve&&&s&n.+t&"$'$`$\"$\&"&ee&&y&srve&&d&&print

Log In?
Username:
Password:

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

How do I use this? | Other CB clients
Other Users?
Others drinking their drinks and smoking their pipes about the Monastery: (8)
As of 2014-12-29 08:43 GMT
Sections?
Information?
Find Nodes?
Leftovers?
    Voting Booth?

    Is guessing a good strategy for surviving in the IT business?





    Results (185 votes), past polls