我有一个正则表达式,用于检查电子邮件地址。
如何设置@之后的整个块的最大符号数。
export const EMAILREGEX =
/^[ ]*[a-zA-Z0-9.!#$%&'*+\/=?^_`{|}~-]{1,64}@[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?(?:\.[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?)*[ ]*$/;
答案 0 :(得分:0)
您可以在正则表达式中的@
字符之后使用正向前瞻,以指定@
字符后的部分的最小最大长度。假设您希望它最少10个字符,最多20个字符,然后可以在正则表达式中(?=.{10,20}$)
之后写@
。这是您的正则表达式的外观,
/^[ ]*[a-zA-Z0-9.!#$%&'*+\/=?^_`{|}~-]{1,64}@(?=.{10,20}$)[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?(?:\.[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?)*[ ]*$/;
这里,(?=)
被称为positive look ahead,.{10,20}$
表示任何字符,最小10和最大20,后跟由$
表示的字符串的结尾
您也可以参阅this帖子,以熟悉环视的工作原理。