Javascript 电子邮件正则表达式

Javascript 电子邮件正则表达式,javascript,regex,Javascript,Regex,不久前,我从一个网站上获取了正则表达式,现在我正在尝试解决一些问题,但我对正则表达式很糟糕,我只是在学习,如果有任何帮助,我将不胜感激 我做错了什么 function validateEmail(email) { var reg1 = /^([a-zA-Z0-9])+\@([a-zA-Z0-9])+\.+([a-zA-Z0-9])+$/; // example@mail.com var reg2 = /^([a-zA-Z0-9])+\@([a-zA-Z0-9])+\.+([a-

不久前,我从一个网站上获取了正则表达式,现在我正在尝试解决一些问题,但我对正则表达式很糟糕,我只是在学习,如果有任何帮助,我将不胜感激

我做错了什么

function validateEmail(email) {

    var reg1 = /^([a-zA-Z0-9])+\@([a-zA-Z0-9])+\.+([a-zA-Z0-9])+$/; // example@mail.com
    var reg2 = /^([a-zA-Z0-9])+\@([a-zA-Z0-9])+\.+([a-zA-Z0-9])+\.+([a-zA-Z0-9])+$/; // example@mail.test.com
    var reg3 = /^([a-zA-Z0-9])+\@([a-zA-Z0-9])+\.+([a-zA-Z0-9])+$/; // example.test@mail.test.com
    var reg4 = /^([a-zA-Z0-9])+\.+@([a-zA-Z0-9])+\.+([a-zA-Z0-9])+\.+([a-zA-Z0-9])+$/; // example.test@mail.com

    return reg1.test(email) || reg2.test(email) || reg3.test(email) || reg4.test(email)
  }
我需要接受以下格式的邮件:

example@mail.com
example@mail.test.com
example.test@mail.test.com
example.test@mail.com
reg1和reg2正在工作,reg3和reg4不工作

上次编辑:

我尝试过这样修复它,但也没有正常工作:

功能验证电子邮件(电子邮件){


除了简单的验证之外,您无法验证电子邮件

*@*.*

您将验证电子邮件发送到该地址,并要求他们单击验证链接。您将发现该链接错误,并禁止人们向您的系统输入电子邮件。

您可以使用单个正则表达式验证这些简单的电子邮件格式:

^[a-zA-Z0-9]+(?:\.[a-zA-Z0-9]+)?@[a-zA-Z0-9]+(?:\.[a-zA-Z0-9]+){1,2}$
  • ^[a-zA-Z0-9]+
    -从一个或多个字母数字字符开始
  • (?:\.[a-zA-Z0-9]+)?
    -可选地允许一个句点后跟一个或多个字母数字字符
  • @
    -需要@符号
  • [a-zA-Z0-9]+
    -需要一个或多个字母数字字符
  • (?:\.[a-zA-Z0-9]+){1,2}$
    -需要一个或两个以上的句点序列,后跟字母数字字符以结束字符串

你期望它做什么?它在做什么?那有什么问题吗?你能描述一下你试图解决的问题吗?我们猜不到。我已经编辑过了,很抱歉。你试过只使用
?你好。这不是用于登录的,我不发送任何验证电子邮件,我也不需要。你永远不会得到一个覆盖范围的正则表达式y电子邮件可能。这是正确的答案(+1),除了在javascript中你必须使用
++.
这是一个我最终能理解并满足我要求的答案。我很感激。谢谢你。@sisorken不客气。我知道正则表达式可能很神秘,特别是当从随机站点复制+粘贴+祈祷时:)@sisorken听到这个消息我很难过,但我很高兴你正在恢复。regex101 IIt’这是一个非常好的网站,可以锻炼你的正则表达式技能并扩展你的理解。我发现正则表达式的很多问题不是“这个语法有什么作用?”而是“为什么这个人要按照这个特定的顺序写语法?他们想解释什么情况?”假设你的示例电子邮件都包含在内,那么“他们想解释什么样的情况?”预先回答:)
^[a-zA-Z0-9]+(?:\.[a-zA-Z0-9]+)?@[a-zA-Z0-9]+(?:\.[a-zA-Z0-9]+){1,2}$