in reply to Re: Re: @ in regex, or not?
in thread @ in regex, or not?

ObCPAN: One good module for this is Mail::Address, found in Graham Barr's Mailtools package.

One point worth noting is that whilst not accepting a valid RFC822 address might be considered rude, if you are going to be doing any validation on the address (for example, only allow the script to send email to a particular domain) you may *want* to only match simple user@domain addresses.

For example, you may not want the address luser%victim.com@your.innocent.domain to pass your check and allow someone to send email to luser@victim.com, but if you allow full RFC822 addresses through then that is the kind of problem you might have. (That and the fact that some attacks try to embed shell command sequences in addresses).

So if the data is from a tainted source, its probably worth doing some aggressive sanitisation prior to sending any email.