我正在使用 python 使用 imap 提取电子邮件正文中提供的信息。
我的代码感兴趣的部分电子邮件:
"BOT ID: 4824CF8B-2986-11EC-80F0-84A93851B964"
我可以使用
从电子邮件正文中提取确切的字符串 if content_type == "text/plain" and "attachment" not in content_disposition:
import re
ID_pattern = r"BOT ID: (\w+)-(\w+)-(\w+)-(\w+)-(\w+)"
machine_id = re.findall(ID_pattern, body)
print(machine_id)
但它返回:
"[('4824CF8B', '2986', '11EC', '80F0', '84A93851B964')]"
我如何操作这个图元/列表以保持原始模式: xxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxxx
谢谢大家。
import re
ID_pattern = r"BOT ID: (\w+)-(\w+)-(\w+)-(\w+)-(\w+)"
machine_id = re.findall(ID_pattern, body)
print(machine_id)
结果:
[('4824CF8B', '2986', '11EC', '80F0', '84A93851B964')]
预计:
4824CF8B-2986-11EC-80F0-84A93851B964
只需使用
join
将所有元素连接成一个字符串
result = [('4824CF8B', '2986', '11EC', '80F0', '84A93851B964')]
result_string = "-".join(result[0])
'4824CF8B-2986-11EC-80F0-84A93851B964'