[Explain why it's bad idea. Always. Point to Friedl RE, link to REs, refer to Perl FAQ, and ...]
One reason this concept is a bad idea - just because a string of characters could, potentially, be an email address does NOT mean that the email address is a valid one. The closest thing that one can do to 'validate' that an email address exists is to send it mail and then to receive mail back in a way that when you parse it, it appears to be valid. Note that even THAT isn't guaranteed.
Pertinent Perl stuff:
Don Libes wrote "Authentication by Email Reception" [L1 ] to describe "use of email addresses as an authentication mechanism ... [which] provides reasonable security at very low cost ..."
tcllib / mime contains commands (mime::parseaddress, mostly) to parse email addresses.
But mime::parseaddress fails (by fail, do you mean does not perform functions it is defined to do - or does it mean does not perform functions that you want it to do?) on simple, common cases. Specifically, it fails for some fairly typical user input:
[email protected],[email protected]
is OK but mime::parseaddress seems unable to deal with
[email protected] [email protected]
Then, when I try to stress it and send mail to
foo<>[email protected]
The parse "succeeds" but the send fails. -- CLN
Please report such things as either bugs or feature requests at http://sourceforge.net/tracker/?group_id=12883 (tcllib trackers)