Javascript 用于电子邮件验证的正则表达式,在此之前至少需要2个字符@

Javascript 用于电子邮件验证的正则表达式,在此之前至少需要2个字符@,javascript,regex,Javascript,Regex,我正在尝试下面的正则表达式,它在@ ^([a-zA-Z])[^.*-\s](?!.[-.@]{2})(?!.\{2})[a-zA-Z0-9-\.]+@([\w-]+[\w]+(?:\.[a-Z]{2,10}){1,2})$ 像 不允许:aa.@co.kk.pp 不允许:aa..@co.kk.pp 不允许:a。a@co.kk.pp 应允许:aa@co.kk.pp 应允许:aaa@co.kk.pp 应允许:aa。s@co.kk.pp. (在特殊字符之后和@之前至少有一个字符) 应允许:aa。ss@c

我正在尝试下面的正则表达式,它在@

^([a-zA-Z])[^.*-\s](?!.[-.@]{2})(?!.\{2})[a-zA-Z0-9-\.]+@([\w-]+[\w]+(?:\.[a-Z]{2,10}){1,2})$

不允许:aa.@co.kk.pp

不允许:aa..@co.kk.pp

不允许:a。a@co.kk.pp

应允许:aa@co.kk.pp

应允许:aaa@co.kk.pp

应允许:aa。s@co.kk.pp. (在特殊字符之后和@之前至少有一个字符)

应允许:aa。ss@co.kk.pp

应允许:a@co.kk.pp

@
之前,仅允许使用特殊字符
\-也不连续,像(--)一样也不在开头

我也试过低于正则表达式,但没有成功


^[a-zA-Z]([^..*-\s])(?!.[-.@]{2})。(?!.\.{2})[\w.-]+@([\w-]+[\w]+(?:\.[a-Z]{2,10}){1,2})$
我建议保持这样的简单:

^([a-zA-Z][\w+-]+(?:\.\w+))@([\w-]+(?:\.[a-zA-Z]{2,10})+)$

它绝不是一个全面的电子邮件验证程序regex,但它应该满足您的要求

详细信息:

  • ^
    :开始
  • :启动捕获组#1
    • [a-zA-Z]
      :匹配字母
    • [\w.+-]+
      :匹配1+个单词字符或
      -
      +
    • (?:\。\w+)
      :在点后匹配选项部分
  • :结束捕获组#1
  • @
    :匹配一个
    @
  • :启动捕获组#2
    • [\w-]+
      :匹配1+个单词字符或
      -
    • (?:\.[a-zA-Z]{2,10})+
      :匹配一个点,后跟2到10个字母。重复该组1+次
  • :结束捕获组#2
  • $
    :结束

我建议将事情简化如下:

^([a-zA-Z][\w+-]+(?:\.\w+))@([\w-]+(?:\.[a-zA-Z]{2,10})+)$

它绝不是一个全面的电子邮件验证程序regex,但它应该满足您的要求

详细信息:

  • ^
    :开始
  • :启动捕获组#1
    • [a-zA-Z]
      :匹配字母
    • [\w.+-]+
      :匹配1+个单词字符或
      -
      +
    • (?:\。\w+)
      :在点后匹配选项部分
  • :结束捕获组#1
  • @
    :匹配一个
    @
  • :启动捕获组#2
    • [\w-]+
      :匹配1+个单词字符或
      -
    • (?:\.[a-zA-Z]{2,10})+
      :匹配一个点,后跟2到10个字母。重复该组1+次
  • :结束捕获组#2
  • $
    :结束

如果@then char前面有任何
特殊字符,则该字符的最小长度应为2。ss@ddd.gg  ? 所以在
之前。(点)
或任何特殊字符后面都应该跟有
min2 char
。我的意思是它不允许
a。ss@ddd.gg
这一个因
ss而失败。sss@co.kk.pp
之前可以,但现在在
之后限制。(DOT)
。在DOT之后不需要任何检查..之前只需担心,
ss失败。s@co.kk.pp
Hi@anubhava…谢谢你的帮助。。只剩下一件事了…你最初提供的那件很好,除此之外,我还增加了一些。。。。可以帮助我包含至少1个字符的相同需求
a@co.kk.pp
如果@then char前面出现任何
特殊字符,则该字符的最小长度应为2。ss@ddd.gg  ? 所以在
之前。(点)
或任何特殊字符后面都应该跟有
min2 char
。我的意思是它不允许
a。ss@ddd.gg
这一个因
ss而失败。sss@co.kk.pp
之前可以,但现在在
之后限制。(DOT)
。在DOT之后不需要任何检查..之前只需担心,
ss失败。s@co.kk.pp
Hi@anubhava…谢谢你的帮助。。只剩下一件事了…你最初提供的那件很好,除此之外,我还增加了一些。。。。可以帮助我包含至少1个字符的相同需求
a@co.kk.pp