RegEx用于电子邮件验证,其中@之前至少需要2个字符

我正在尝试下面的 RegEx,它在@之前至少需要2 个字符

^([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

不允许:aa@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})+)$

正则表达式演示

它绝不是一个全面的电子邮件验证器正则表达式,但它应该满足您的要求。

细节:

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

以上是RegEx用于电子邮件验证,其中@之前至少需要2个字符的全部内容。
THE END
分享
二维码
< <上一篇
下一篇>>