in reply to Perl equivlanet of simple awk
> echo '/user@example.com/ {print $2}' |a2p #!/usr/bin/perl eval 'exec /usr/bin/perl -S $0 ${1+"$@"}' if $running_under_some_shell; # this emulates #! processing on NIH machines. # (remove #! line above if indigestible) eval '$'.$1.'$2;' while $ARGV[0] =~ /^([A-Za-z_0-9]+=)(.*)/ && shift; # process any FOO=bar switches $, = ' '; # set output field separator $\ = "\n"; # set output record separator while (<>) { ($Fld1,$Fld2) = split(' ', $_, -1); if (/user@example.com/) { print $Fld2; } }
anyway you're not checking the first column but the whole line for an email address.
consider prepending an ^ in your regex.
Cheers Rolf
UPDATE: IMHO the @ in the regex should be escaped to avoid array interpolation, seems to be a bug in a2p.
|
|---|