我是正则表达式的新手。我不能做想要的事。我已经在下面给出了正则表达式
var emailx= /^([a-zA-Z_.]+@[a-z]+[.]+[a-zA-Z]+)$/;
但最后我想要点号([.])
后至少3个字符,最多5个字符。
你能帮我解决一下这个问题。
谢谢。
答案 0 :(得分:2)
在大多数正则表达式中(您没有说明您使用的是哪种),您可以使用{min,max}
量词。例如:
[a-zA-Z]{3,5}
如果你碰巧使用没有这个的味道,那么你可以这样做:
[a-zA-Z][a-zA-Z][a-zA-Z][a-zA-Z]?[a-zA-Z]?
此外,如果您只想要一个点,则应使用\.
,而不是[.]+
,即“一个或多个点”。并且您可以使这种不区分大小写的简化:
var emailx = /^([a-z_.]+@[a-z]+\.[a-z]{3,5})$/i;
最后,请注意您的正则表达式会丢弃许多合法的电子邮件地址。比如我的!@phrogz.net
。这是一个更强大的(仍然不够好,恕我直言):
http://www.regular-expressions.info/email.html
答案 1 :(得分:0)
您可以在正则表达式中使用{MIN_OCCURANCE,MAX_OCCURANCE}。
Like {3,5}