Validating email addresses using regular expressions

This is to verify that I actually own that email address before my account is activated.At this point, why keep parsing email addresses for their format?Even go so far as to point out WHAT did not check out in the regexp check, but do NOT stop them from submitting the form.But keep in mind that one should not rely only upon Java Script validation. This should be validated on the server side as well.^ #start of the line [_A-Za-z0-9-\ ] # must start with string in the bracket [ ], must contains one or more ( ) ( # start of group #1 \.[_A-Za-z0-9-] # follow by a dot "." and string in the bracket [ ], must contains one or more ( ) )* # end of group #1, this group is optional (*) @ # must contains a "@" symbol [A-Za-z0-9-] # follow by string in the bracket [ ], must contains one or more ( ) ( # start of group #2 - first level TLD checking \.[A-Za-z0-9] # follow by a dot "." and string in the bracket [ ], must contains one or more ( ) )* # end of group #2, this group is optional (*) ( # start of group #3 - second level TLD checking \.[A-Za-z] # follow by a dot "." and string in the bracket [ ], with minimum length of 2 ) # end of group #3 $ #end of the line The combination means, email address must start with “_A-Za-z0-9-\ ” , optional follow by “.[_A-Za-z0-9-]”, and end with a “@” symbol. Email is valid : [email protected], true Email is valid : [email protected], true Email is valid : [email protected], true Email is valid : [email protected], true Email is valid : [email protected], true Email is valid : [email protected] , true Email is valid : [email protected], true Email is valid : [email protected] , true Email is valid : mkyong [email protected], true Email is valid : [email protected], true Email is valid : mkyong , false Email is valid : [email protected] , false Email is valid : [email protected] , false Email is valid : [email protected], false Email is valid : [email protected] , false Email is valid : [email protected], false Email is valid : mkyong()*@, false Email is valid : [email protected]%*, false Email is valid : [email protected], false Email is valid : [email protected], false Email is valid : [email protected]@, false Email is valid : [email protected] , false PASSED: Valid Email Test([ The email’s domain name must start with “A-Za-z0-9-“, follow by first level Tld (.com, .net) “.[A-Za-z0-9]” and optional follow by a second level Tld (au, my) “\.[A-Za-z]”, where second level Tld must start with a dot “.” and length must equal or more than 2 characters. They can get ridiculously convoluted as in the case above and, according to the specification, are often too strict anyway.

validating email addresses using regular expressions-60

The best thing I have found is this bool is Email = Regex.

But what if I told you there were a way to determine whether or not an email is valid without resorting to regular expressions at all? The activation email is a practice that’s been in use for years, but it’s often paired with complex validations that the email is formatted correctly.

It’s surprisingly easy, and you’re probably already doing it anyway. If you’re going to send an activation email to users, why bother using a gigantic regular expression?

[email protected] – “.a” is not a valid tld, last tld must contains at least two characters 4. mkyong()*@– email’s is only allow character, digit, underscore and dash 8.

[email protected]– email’s first character can not start with dot “.” 7.

Leave a Reply