>perl -wMstrict -lE "my $email = 'someuser@example.com'; $email =~ /(.*) (<.*>)/; say qq{A: 1='$1' 2='$2'}; ;; $email =~ /([^@]+\z)/; say qq{B: 1='$1' 2='$2'}; ;; $email =~ /(.*) (<.*>)/; say qq{C: 1='$1' 2='$2'}; " Use of uninitialized value $1 in concatenation (.) or string at -e line 1. Use of uninitialized value $2 in concatenation (.) or string at -e line 1. A: 1='' 2='' Use of uninitialized value $2 in concatenation (.) or string at -e line 1. B: 1='example.com' 2='' Use of uninitialized value $2 in concatenation (.) or string at -e line 1. C: 1='example.com' 2=''