in reply to Re^3: perl 5.10 bug or not?
in thread perl 5.10 bug or not?

The problem is actually why do I get some capture if I had no previous successful match.

In case of "foo <bar>" I definitely should get two captures, but I have no clue why do I get a capture "bar.com" with "foo@bar.com" sample. Observed on v5.10.0 DEVEL34916

Replies are listed 'Best First'.
Re^5: perl 5.10 bug or not?
by Corion (Patriarch) on Aug 20, 2013 at 15:58 UTC

    See perlre:

    NOTE: Failed matches in Perl do not reset the match variables, which makes it easier to write code that tests for a series of more specific cases and remembers the best match.

    $1 and $2 have their old values from a match somewhere else in your code.

    Always guard use of $1 with an if statement to make sure it matched:

    if( m/(.*) <(.*)>/ ) { print "Matched '$1' + '$2'"; } else { print "Did not match"; };