【发布时间】:2014-05-24 11:38:07
【问题描述】:
我正在处理大量电子邮件。很多邮件都有错别字。我正在尝试构建一个将检查有效电子邮件的字符串。
这就是我的正则表达式。
def is_a_valid_email?(email)
(email =~ /^(([A-Za-z0-9]*\.+*_+)|([A-Za-z0-9]+\-+)|([A-Za-z0-9]+\+)|([A-Za-z0-9]+\+))*[A-Za-z0-9]+@{1}((\w+\-+)|(\w+\.))*\w{1,63}\.[a-zA-Z]{2,4}$/i)
end
如果电子邮件带有下划线且只有一个句点,则通过。我有很多电子邮件的名称本身有一个以上的句点。我如何在正则表达式中检查它。
hello.me_1@email.com # <~~ valid
foo.bar#gmail.co.uk # <~~~ not valid
f.o.o.b.a.r@gmail.com # <~~~valid
f...bar@gmail.com # <~~ not valid
get_at_m.e@gmail #<~~ valid
有人可以帮我重写我的正则表达式吗?
【问题讨论】:
-
请参阅here 以创建您的正则表达式。
标签: ruby regex validation email