Python中的正则表达式电子邮件搜索

2024-10-03 21:27:19 发布

您现在位置:Python中文网/ 问答频道 /正文

我的电子邮件正则表达式搜索正在提取.comthis而不是.com域,如何使它只搜索有用的域?你知道吗

regex = re.compile(("([a-z0-9!#$%&'*+\/=?^_`{|}~-]+(?:\.[a-z0-9!#$%&'*+\/=?^_`"
                "{|}~-]+)*(@|\sat\s)(?:[a-z0-9](?:[a-z0-9-]*[a-z0-9])?(\.|"
                "\sdot\s))+[a-z0-9](?:[a-z0-9-]*[a-z0-9])?)"))

Tags: recom电子邮件satregexcompilez0sdot
1条回答
网友
1楼 · 发布于 2024-10-03 21:27:19

我觉得有些东西可能有用

import re
s = 'My name is Conrad, and blahblah@gmail.com is my email.'
domain = re.search("@[\w.]+", s)
print domain.group()

输出

你知道吗@gmail.com 正则表达式的工作原理:

@ - scan till you see this character

[\w.]一组可能匹配的字符,因此\w是所有字母数字字符,后面是句点。添加到该字符集。你知道吗

  • 上一组中的一个或多个。你知道吗

因为这个正则表达式匹配句点字符和@之后的每个字母数字,所以即使在句子中间,它也会匹配电子邮件域。你知道吗

相关问题 更多 >