Python 打印字符串的所有电子邮件地址

Python 打印字符串的所有电子邮件地址,python,regex,python-3.x,Python,Regex,Python 3.x,给定一个包含一个或多个电子邮件地址的字符串,如何编写函数 它打印字符串的所有有效电子邮件地址。 考虑下面的代码,它可以决定字符串是否是一个电子邮件地址,意思是 无法确定字符串是否包含电子邮件地址。 如何开发此代码,以便它检查字符串是否包含一个或多个电子邮件地址 然后打印出来 import re def check(email): return re.match(r'[^@]+@[^@]+\.[^@]+', email) != None 使用re.findall: emails =

给定一个包含一个或多个电子邮件地址的字符串,如何编写函数 它打印字符串的所有有效电子邮件地址。 考虑下面的代码,它可以决定字符串是否是一个电子邮件地址,意思是 无法确定字符串是否包含电子邮件地址。 如何开发此代码,以便它检查字符串是否包含一个或多个电子邮件地址 然后打印出来

import re
def check(email):
      return re.match(r'[^@]+@[^@]+\.[^@]+', email) != None
使用re.findall:

emails = re.findall('[^@ ]+@[^@ ]+\.[^@ ]+', stringWithEmails)

编辑:嗯,也许你需要一个更好的RE来匹配电子邮件,例如,请参阅。

你可能也应该排除空格。@Ingo:你能解释一下你的说法吗?@Faust,因为例如:
“STOP-ESM.org”
是一个有效的电子邮件地址。不,
info@stop-esm.org
是一个有效的电子邮件地址<代码>“STOP-ESM.org”是
rcpt to
标题的有效内容。它们是略有不同的东西。