import re
# 一条典型的日志
log="2026-08-24 10:30:15 ERROR 数据库连接失败,请检查配置"
# 用命名分组把日志拆成 4 个字段
pattern=re.compile(r"(?P<date>\d{4}-\d{2}-\d{2}) "
r"(?P<time>\d{2}:\d{2}:\d{2}) "
r"(?P<level>\w+) "
r"(?P<msg>.*)")
m=pattern.search(log)
print("日期:",m.group("date"))# 2026-08-24
print("时间:",m.group("time"))# 10:30:15
print("级别:",m.group("level"))# ERROR
print("消息:",m.group("msg"))# 数据库连接失败,请检查配置
# 再从另一段文本里提取手机号和邮箱
text="联系我:13812345678 或 email me at foo@bar.com,备用 13987654321"
phones=re.findall(r"1[3-9]\d{9}",text)
emails=re.findall(r"[\w.+-]+@[\w-]+\.[\w.]+",text)
print("手机号:",phones)# ['13812345678', '13987654321']
print("邮箱:",emails)# ['foo@bar.com']