如何从以下元素中查找电子邮件地址?

时间:2017-11-20 18:47:32

标签: python regex

如何使用正则表达式查找电子邮件地址并将mailto:视为标记。我尝试了一个表达式,但它只解析了一小部分。

import re
html_content='''
<p><a href="mailto:info@mohindraroto.com">info@mohindraroto.com</a></p>
'''
row = re.findall(r'mailto:(\w*.)',html_content)[0]
print(row)

它给了我:

info@

任何有助于修改现有表达式或创建新表达式以帮助查找电子邮件的帮助都将受到高度赞赏。

3 个答案:

答案 0 :(得分:4)

对于您的示例,我建议匹配以mailto:开头的模式,后跟除double quotes之外的任何字符: -

row = re.findall(r'mailto:([^"]*)',html_content)
print(row)

答案 1 :(得分:2)

(?:.*mailto:)([^"]*)"也可以使用。它使用非捕获组来查找&#34; mailto:并在文本被捕获之后直到未捕获的结束"

答案 2 :(得分:0)

这将基于您当前的示例:

'mailto:(\w*.\w*.com)'

只要是.com电子邮件地址

,就可以使用

我认为正则表达式在@处停止,因为它是一个特殊的字符而不是那些字或某些东西