一行中的多个电子邮件地址的正则表达式

时间:2016-03-15 22:29:47

标签: regex email-validation

我目前有这个正则表达式:

/\w+@\w+\.\w+/

它非常适合像这样的字符串:

foo@bar.com, bar@foo.com, far@boo.com

但是,对于在“@”之前或之后有两个句点的电子邮件,它不起作用,例如:

foo.bar@bar.edu.fr

如何修改正则表达式以使其与第二个字符串一起使用?

谢谢! :)

2 个答案:

答案 0 :(得分:1)

使用字符类而不是\w并在其中添加.。像这样:

/^[a-zA-Z0-9_.]+@[a-zA-Z0-9_.]+$/

https://developers.google.com/drive/v3/reference/files#resource-representations

答案 1 :(得分:0)

鉴于你在正则表达式中有一段时间硬编码,这并不奇怪。使用\S+匹配任何非空白字符:

>>> re.findall(r"\S+@\S+", "foo.bar@bar.edu.fr")
['foo.bar@bar.edu.fr']