Beefy Boxes and Bandwidth Generously Provided by pair Networks
Do you know where your variables are?

Re^3: I need a "non-trivial" bug for my script!

by Lawliet (Curate)
on Feb 27, 2009 at 00:28 UTC ( #746715=note: print w/ replies, xml ) Need Help??

in reply to Re^2: I need a "non-trivial" bug for my script!
in thread I need a "non-trivial" bug for my script!

Hah, I hated that one! Out of curiosity, what is the best method of fixing it? Undefining $1 before the regex (not sure if that is possible), testing to see if the regex is successful, or something else?

And you didn't even know bears could type.

Comment on Re^3: I need a "non-trivial" bug for my script!
Re^4: I need a "non-trivial" bug for my script!
by f00li5h (Chaplain) on Feb 27, 2009 at 00:36 UTC

    Do the match in list context, and don't use $\d+ at all

    if (@kitties = $string =~ /pattern (with) captures/) { paw_at @kitties; }
    Obviously you can use my($cats, $kittens) in place of @kitties there.

    The other option is check that the match succeeded first

    if ($string =~ /pattern (with) captures/) { paw_at $1; }
    but $1 is ugly... unpacking into either an array or bundle of scalars will get you less maintenence-programmer hate.

    @_=qw; ask f00li5h to appear and remain for a moment of pretend better than a lifetime;;s;;@_[map hex,split'',B204316D8C2A4516DE];;y/05/os/&print;

Log In?

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

How do I use this? | Other CB clients
Other Users?
Others musing on the Monastery: (8)
As of 2015-05-29 11:40 GMT
Find Nodes?
    Voting Booth?

    In my home, the TV remote control is ...

    Results (583 votes), past polls