电子邮件验证javascript中的正则表达式

时间:2012-12-07 03:19:01

标签: javascript regex

我正在为电子邮件进行电子邮件正则表达式验证,但我仍然坚持使用 如果用户输入abc.abc之类的内容,那么下面的表达式可以正常工作,但是当用户输入advxyz@pqr.com时它就不起作用

var myreg = new RegExp(/([a-z0-9.]+)@([a-z0-9]+)\.([a-z0-9]+)/i);
var patter =  myreg.test(document.getElementById("email").value)
alert(patter)
if(patter == false){
  errorMsg.push("email Formate Error Ex:firstname.lastname@abc.com");
}

我希望该用户必须在firstname.lastname@abc.com/.ca/.org

这样的格式中输入他的电子邮件

5 个答案:

答案 0 :(得分:0)

var pattern = /^[a-z0-9]+\.[a-z0-9]+@[a-z0-9]+\.[a-z]+$/i;

pattern.test('firstname.lastname@abc.com');
// returns true;

pattern.test('jsmith@abc.com');
// returns false;

pattern.test("abc.abc");
// returns false;

答案 1 :(得分:0)

使用正则表达式可能是最好的方法。

这是一个例子  (现场演示):

function validateEmail(email) { 
  var re = /^(([^<>()[\]\\.,;:\s@\"]+(\.[^<>()[\]\\.,;:\s@\"]+)*)|(\ ".+\"))@((\[[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\])|(([a-zA-Z\-0-9]+\.)+[a-zA-Z]{2,}))$/;
  return re.test(email);
}

但请记住,不应该只依赖JavaScript验证。可以轻松禁用JavaScript。这也应该在服务器端验证。

Source

答案 2 :(得分:0)

验证电子邮件地址的模式是:

/ ^([A-ZA-Z0-9 _.-])+ \ @(([A-ZA-Z0-9 - ])+。)+([A-ZA-Z0-9] {2- ,4})+ $ /;

在Regex中使用此模式。你可以验证任何电子邮件..

答案 3 :(得分:0)

这项工作非常适合我。

/^[a-zA-Z]([a-zA-Z0-9_\-])+([\.][a-zA-Z0-9_]+)*\@((([a-zA-Z0-9\-])+\.){1,2})([a-zA-Z0-9]{2,40})$/;

答案 4 :(得分:-1)

希望这有助于解决问题\ b [A-Z0-9 ._% - ] + @ [A-Z0-9 .-] +。[A-Z] {2,4} \ b 它区分大小写。