in reply to Extended Regular Expressions

Hmm... you've confused me a bit here. You have a typo in the code, and I'm not sure why you have the /x on your second regex. The /x merely means "allow extraneous whitespace and comments."
#!/usr/bin/perl -l $_ = '<a href= ?a=500011&w=2&r=1 >joe@blow.com</a>'; print $& if /^<a href.*>[^\z]/; print $& if /^<a href.*>(?=[^\z])/;
This code prints:
<a href= ?a=500011&w=2&r=1 >j <a href= ?a=500011&w=2&r=1 >
Perhaps you want to use:
/^<a [^>]+>([^<]+)/
That kinda matches a tag, followed by kinda the non-tag stuff after it.

_____________________________________________________
Jeff[japhy]Pinyan: Perl, regex, and perl hacker.
s++=END;++y(;-P)}y js++=;shajsj<++y(p-q)}?print:??;