This is a set of links likely to be interesting to web programming students. Also see my regular link page.
!#$%&'*+-/=?^_`{|}~.0123456789abcdefghijklmnlopqrstuvwxyzABCDEFGHIJKLMNLOPQRSTUVWXYZ
So, for example, "*@*.*" is a perfectly legal
email address.
It's shorter to list the characters that are illegal:
()<>[]:;@\,"
and control characters.
If you make the address a "quoted-string", then you can include all printable characters and most control characters. A "quoted-string" can contain any seven-bit character other than NUL, TAB, CR and LF.
So, if you're trying to verify that an address is legal, use Perl's Mail::Address, instead of doing it yourself.