...

View Full Version : email validation needs tweaking



shiftless
02-16-2007, 04:27 PM
I'm using the following code for an email validator:


function emailCheck(emailStr) {

// checks if the e-mail address is valid
var emailPat = /^(\".*\"|[A-Za-z]\w*)@(\[\d{1,3}(\.\d{1,3}){3}]|[A-Za-z]\w*(\.[A-Za-z]\w*)+)$/;
var matchArray = emailStr.match(emailPat);
if (matchArray == null) {
alert("Your email address seems incorrect. Please try again (check the '@' and '.'s in the email address)");
return false;
}
// make sure the IP address domain is valid
var IPArray = matchArray[2].match(/^\[(\d{1,3})\.(\d{1,3})\.(\d{1,3})\.(\d{1,3})\]$/);
if (IPArray != null) {
for (var i=1;i<=4;i++) {
if (IPArray[i]>255) {
alert("Your email destination IP address is invalid!");
return false;
}
}
}
return true;
}

But the following email address get rejected:

firstname.lastname@gmail.com
macinaw-brownies@yahoo.com
momsclub90210@yahoo.com



and I can't figure out why. How do I tweak my code so that these email address will be seen as valid?

Philip M
02-16-2007, 04:38 PM
Try this:-

var emailPat = /^([a-z0-9])(([\-.]|[_]+)?([a-z0-9]+))*(@)([a-z0-9])((([-]+)?([a-z0-9]+))?)*((.[a-z]{2,3})?(.[a-z]{2,6}))$/i



EZ Archive Ads Plugin for vBulletin Copyright 2006 Computer Help Forum