JavaScript的电子邮件地址正则表达式

时间:2019-08-07 09:31:14

标签: javascript regex

我正在尝试为电子邮件地址实现一个正则表达式,其中电子邮件的第一部分不应超过64个字符,@符号后面的第二部分应不超过253个字符,而我所做的

UITextField

但是即使第一部分超过64个字符,仍然是匹配项(不是这种情况),我仍使用此链接来测试我的正则表达式:https://regex101.com/

任何人都可以帮忙吗

2 个答案:

答案 0 :(得分:1)

模式中的量词太多:$ npm install之后的+将重复括号模式1次或多次,这不太可能达到您的期望。与{1,64})相同。

您可以使用

([A-Za-z0-9_\-\.]{1,253})+

详细信息

  • /^[\w.-]{1,64}@(?!.{254})[\w.-]+\.[A-Za-z]{2,4}$/ -字符串的开头
  • ^-1至64个字母,数字,[\w.-]{1,64}_.字符
  • --一个@字符
  • @-不允许在右边254个字符
  • (?!.{254})-1个以上的字母,数字,[\w.-]+_.字符
  • --一个点
  • \.-两个,三个或四个ASCII字母
  • [A-Za-z]{2,4}-字符串的结尾。

答案 1 :(得分:1)

您要使用量化词将这些组重复1次以上。

您可以省略量词(如果不想单独使用或引用它们,也可以省略组)

请注意,您不必在字符类中转义点。

height

Regex demo