Solved

Definition of valid e-mail address?

Posted on 1998-03-27
6
464 Views
Last Modified: 2010-04-21
What characters are allowed in an e-mail address to the left of the @ sign?  Are there characters which are not strictly correct, but do work and are used anyway?
0
Comment
Question by:gwilym
[X]
Welcome to Experts Exchange

Add your voice to the tech community where 5M+ people just like you are talking about what matters.

  • Help others & share knowledge
  • Earn cash & points
  • Learn & ask questions
  • 4
6 Comments
 
LVL 84

Expert Comment

by:ozo
ID: 2009020
Any character is allowed, when properly quoted.
http://ds.internic.net/rfc/rfc822.txt
(And you can even have deliverable addresses which aren't RFC 822 compliant)
0
 

Author Comment

by:gwilym
ID: 2009021
What do you mean when you say that any character can be used if 'properly quoted'?  I know for instance that @ and space cannot be used.  Could you give me list of characters?  I'm writing a routine to just verify that the left bit doesn't contain any disallowed characters.
0
 
LVL 84

Expert Comment

by:ozo
ID: 2009022
Sorry, but
"@ and space"@domain.com
is a perfectly valid e-mail address, and verifying adresses is more complicated than just checking for disallowed characters.
0
Industry Leaders: We Want Your Opinion!

We value your feedback.

Take our survey and automatically be enter to win anyone of the following:
Yeti Cooler, Amazon eGift Card, and Movie eGift Card!

 
LVL 84

Expert Comment

by:ozo
ID: 2009023
On the other hand, although valid, it is an unusual address.
And perhaps your routine may want to flag it anyway, to ask someone to confirm it.
I wouldn't know what characters you might want to use for that, since that may depend on what kinds of addresses your routine would typically see (maybe the ones you're interested in happen not to use @ or space, maybe they eschew the use of digits or capitals), on how willing you are to needlessly flag a valid address in order to avoid the risk of allowing a bad address, and on what kinds of invalid adresses your routine would be likely to encounter.
0
 
LVL 3

Accepted Solution

by:
braveheart earned 50 total points
ID: 2009024
Although not foolproof, over 99% of addresses will be validated correctly if you just limit the range of characters to alphanumeric characters, underscore and minus sign. Sure you can have any character if escaped properly but only a lunatic would bother to use anything outside of this range.
0
 
LVL 84

Expert Comment

by:ozo
ID: 2009025
As I said, you can decide what threshold of unusualness works best for you.
if you think your routine is more likely to see addresses like
-_-@experts-exchange.com
than
12345.6789@compuserve.com
then alphanumerics, underscore, and minus might work well for you.
(I'd hate to call anyone else a lunatic though. If spam address collectors are using that rule,
then I might see how having a luny address could be quite sensible:-)
0

Featured Post

Free Tool: Subnet Calculator

The subnet calculator helps you design networks by taking an IP address and network mask and returning information such as network, broadcast address, and host range.

One of a set of tools we're offering as a way of saying thank you for being a part of the community.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

Suggested Solutions

When you do backups in the Solaris Operating System, the file system must be inactive. Otherwise, the output may be inconsistent. A file system is inactive when it's unmounted or it's write-locked by the operating system. Although the fssnap utility…
A metadevice consists of one or more devices (slices). It can be expanded by adding slices. Then, it can be grown to fill a larger space while the file system is in use. However, not all UNIX file systems (UFS) can be expanded this way. The conca…
Learn several ways to interact with files and get file information from the bash shell. ls lists the contents of a directory: Using the -a flag displays hidden files: Using the -l flag formats the output in a long list: The file command gives us mor…
Learn how to find files with the shell using the find and locate commands. Use locate to find a needle in a haystack.: With locate, check if the file still exists.: Use find to get the actual location of the file.:
Suggested Courses

751 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question