Solved

Definition of valid e-mail address?

Posted on 1998-03-27
6
441 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
  • 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
Courses: Start Training Online With Pros, Today

Brush up on the basics or master the advanced techniques required to earn essential industry certifications, with Courses. Enroll in a course and start learning today. Training topics range from Android App Dev to the Xen Virtualization Platform.

 
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

Gigs: Get Your Project Delivered by an Expert

Select from freelancers specializing in everything from database administration to programming, who have proven themselves as experts in their field. Hire the best, collaborate easily, pay securely and get projects done right.

Question has a verified solution.

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

Suggested Solutions

Introduction Regular patching is part of a system administrator's tasks. However, many patches require that the system be in single-user mode before they can be installed. A cluster patch in particular can take quite a while to apply if the machine…
Using libpcap/Jpcap to capture and send packets on Solaris version (10/11) Library used: 1.      Libpcap (http://www.tcpdump.org) Version 1.2 2.      Jpcap(http://netresearch.ics.uci.edu/kfujii/Jpcap/doc/index.html) Version 0.6 Prerequisite: 1.      GCC …
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 navigate the file tree with the shell. Use pwd to print the current working directory: Use ls to list a directory's contents: Use cd to change to a new directory: Use wildcards instead of typing out long directory names: Use ../ to move…

816 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

Need Help in Real-Time?

Connect with top rated Experts

8 Experts available now in Live!

Get 1:1 Help Now