^[a-z0-9.\+-_]+@([a-z0-9][a-z0-9-]*\.)+([a-z]{2}|com|org|net|gov|mil|biz|info|mobi|name|aero|jobs|museum)$
This expression should have case insensitive flag.
Javascript code:
emailRE = /^[a-z0-9.\+-_]+@([a-z0-9][a-z0-9-]*\.)+([a-z]{2}|com|org|net|gov|mil|biz|info|mobi|name|aero|jobs|museum)$/i;
if (emailRE.test (email)) alert ('Valid e-mail!');
This expression would block a lot of invalid addresses like:
It would still miss some invalid addresses:
It would block some strange, but RFC 2822 allowed addresses like:
© Alexey Busygin, 2008–2010. alexey@busygin.com