我是 Python 新手。我有一个包含许多电子邮件 ID 和普通单词的字符串。我想获取包含特定单词的电子邮件 ID 数。目前,我正在使用正则表达式来过滤掉包含字符串的单词,并在此列表中使用另一个正则表达式来过滤掉电子邮件 ID。只是想知道是否有更好的方法来做到这一点!
例子:
Str1 :这个 fet@dmail.com 是一个与 get@dmail.com 和 net@dfet.com 关联的字符串。
Str2: 脚
程序应返回计数为 2 1.fet@dmail.com 2.net@dfet.com
这是我目前正在使用的代码。我正在创建一个包含 str2 的字符串列表并验证它是否是电子邮件 ID ......
text_to_search = ".*(" + word_to_be_searched.lower() + ").*"
regex = re.compile(text_to_search)
lister = [m.group(0) for l in row_value[column_index].lower().split( ) for m in [regex.search(l)] if m]
for li in lister:
if re.match("^[a-zA-Z0-9._%-]+@[a-zA-Z0-9._%-]+.[a-zA-Z]{2,6}$", li):
match_count = match_count + 1