我正在使用以下内容进行电子邮件验证:
var filter = /^(\w+)(\.\w+)*@(\w+)(\.\w+)+$/;
注意到它不支持xxxx+wildcard@gmail.com(它不支持+通配符部分)。有什么方法可以添加它吗?
答案 0 :(得分:2)
您应该使用\S+@\S+\.\S+
,它会与@
和.
匹配任何内容。
除此之外的任何事情都会拒绝有效但不起眼的地址。
即使这样也会拒绝有效但不起眼的地址,例如"Test Me"@localhost
但是,这些从未在实践中使用过。 [citation needed]
答案 1 :(得分:1)
我喜欢SLak的回答。我实际上有一个正则表达式,我写了一段时间,甚至更开放。
^.+@.+\..+$
背后的想法是相似的。不要这么努力。相反,错误地接受了太多。据我所知,这个正则表达式应该接受每个可以想到的有效电子邮件地址(以及一些无效的电子邮件地址)。