Go Back   HostGator Peer Support Forums > HostGator Peer Support Forums > Shared Hosting Support

Notices

Reply
 
Thread Tools
  #1  
Old 07-05-2008, 11:10 AM
qwibbles's Avatar
qwibbles qwibbles is offline
Hatchling Croc
 
Join Date: May 2008
Location: UK
Posts: 26
Lightbulb Email Validation Regular Expression

How about this regular expression i was pointed to by a forum to validate email addresses!!!

http://www.ex-parrot.com/~pdw/Mail-RFC822-Address.html

I could not believe it.

I think this one is a bit more reasonable

1

Code:
/^[-_.a-z0-9]+@(([-_a-z0-9]+\.)+(ad|ae|aero|af|ag|ai|al|am|an|ao|aq|ar|arpa|as|at|au|aw|az|ba|bb|bd|be|bf|bg|bh|bi|biz|bj|bm|bn|bo|br|bs|bt|bv|bw|by|bz|ca|cc|cd|cf|cg|ch|ci|ck|cl|cm|cn|co|com|coop|cr|cs|cu|cv|cx|cy|cz|de|dj|dk|dm|do|dz|ec|edu|ee|eg|eh|er|es|et|eu|fi|fj|fk|fm|fo|fr|ga|gb|gd|ge|gf|gh|gi|gl|gm|gn|gov|gp|gq|gr|gs|gt|gu|gw|gy|hk|hm|hn|hr|ht|hu|id|ie|il|in|info|int|io|iq|ir|is|it|jm|jo|jp|ke|kg|kh|ki|km|kn|kp|kr|kw|ky|kz|la|lb|lc|li|lk|lr|ls|lt|lu|lv|ly|ma|mc|md|mg|mh|mil|mk|ml|mm|mn|mo|mp|mq|mr|ms|mt|mu|museum|mv|mw|mx|my|mz|na|name|nc|ne|net|nf|ng|ni|nl|no|np|nr|nt|nu|nz|om|org|pa|pe|pf|pg|ph|pk|pl|pm|pn|pr|pro|ps|pt|pw|py|qa|re|ro|ru|rw|sa|sb|sc|sd|se|sg|sh|si|sj|sk|sl|sm|sn|so|sr|st|su|sv|sy|sz|tc|td|tf|tg|th|tj|tk|tm|tn|to|tp|tr|tt|tv|tw|tz|ua|ug|uk|um|us|uy|uz|va|vc|ve|vg|vi|vn|vu|wf|ws|ye|yt|yu|za|zm|zw)|(([0-9][0-9]?|[0-1][0-9][0-9]|[2][0-4][0-9]|[2][5][0-5])\.){3}([0-9][0-9]?|[0-1][0-9][0-9]|[2][0-4][0-9]|[2][5][0-5]))$/i
or
2
Code:
/^[^a-zA-Z][a-zA-Z0-9_]+([.][a-zA-Z0-9_]+)*[@][a-zA-Z0-9_]+([.][a-zA-Z0-9_]+)*[.][a-zA-Z]{2,4}$/
or from drupal common.inc

3
Code:
function valid_email_address($mail) {
  $user = '[a-zA-Z0-9_\-\.\+\^!#\$%&*+\/\=\?\`\|\{\}~\']+';
  $domain = '(?:(?:[a-zA-Z0-9]|[a-zA-Z0-9][a-zA-Z0-9\-]*[a-zA-Z0-9])\.?)+';
  $ipv4 = '[0-9]{1,3}(\.[0-9]{1,3}){3}';
  $ipv6 = '[0-9a-fA-F]{1,4}(\:[0-9a-fA-F]{1,4}){7}';

  return preg_match("/^$user@($domain|(\[($ipv4|$ipv6)\]))$/", $mail);
}
Drupal one look's pretty solid to me. The other 2 here should work for 99% of email addresses .... problem is with these, is the allowed domain for names etc keep changing so I guess these will always be changes. I am currently using the first one BTW.

Anyone know if there are built in functions in perl and php for doing this?

Please post any good email validation expressions you have .... not like the 6.2K one though .

Reference
http://www.regular-expressions.info/email.html
http://www.sitepoint.com/print/regular-expressions-php
__________________
Philip

Wants to be a Dedi Croc one day :-)
http://www.sdss.co.uk
Reply With Quote
  #2  
Old 07-05-2008, 08:12 PM
gwyneth's Avatar
gwyneth gwyneth is offline
Supreme Croc
 
Join Date: Sep 2006
Location: up north
Posts: 6,843
Default Re: Email Validation Regular Expression

There may be something on this site:

Regular Expression Library

People working with regular expressions may find this very useful:

Regular Expressions Cheat Sheet - Cheat Sheets

This appears to be a Firefox addon that I have in my collection, for some reason:

Regular Expressions Tester
Reply With Quote
  #3  
Old 07-10-2008, 04:59 PM
mp3 mp3 is offline
Junior Croc
 
Join Date: Dec 2007
Posts: 167
Default Re: Email Validation Regular Expression

This is one I use in a contact form script. I think I have a newer one somewhere....I should really find it as this was my first attempt at PHP's PCRE support.

Perhaps it will be useful though.
Code:
"/^[a-zA-Z]+[a-zA-Z0-9_-]* ((([.]{1}) | ([a-zA-Z0-9_-]*)) | (([+]{1}) | ([a-zA-Z0-9_-]*)) | (([.]{1}) ([a-zA-Z0-9_-]+) ([+]{1}) ([a-zA-Z0-9_-]*))) [a-zA-Z0-9_-]+ [@]{1} ([a-zA-Z0-9-]+ [.]{1}){1,4} [a-zA-Z]{2,6} $/x"

"/^(.){2,64} @{1} (.){4,255}/x"

"/^(.){7,75}/x"
Broken into pieces for readability.
Reply With Quote
Reply

Bookmarks

Thread Tools

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off

Forum Jump

Similar Threads
Thread Thread Starter Forum Replies Last Post
Domain Keys Identified Mail (DKIM) eMail Validation and Signing WiredRoads Suggestions 6 12-01-2008 02:23 AM
PHP validation question episkey Shared Hosting Support 3 04-18-2008 01:11 AM
reseller vs regular wickedelf Pre-Sales Questions 4 11-23-2005 02:54 PM
Forum Validation Mychelle Pre-Sales Questions 6 08-29-2005 03:31 PM

All times are GMT -5. The time now is 05:27 AM.