Python 正则表达式与日志文件处理全解析
1. 正则表达式基础与应用
正则表达式在数据处理中是非常强大的工具。我们可以使用它从大段文本中提取所需的数据,而无需关注大文本的具体细节。例如,使用相同的模式对象,通过特定方法可以创建一个包含所有匹配文本位置的列表。
# 示例代码,创建包含匹配文本的列表
import re
# 假设 text 是大段文本,pattern 是正则表达式模式
pattern = re.compile(r'\d{2}:\d{2}:\d{2}')
matches = [x.group() for x in pattern.finditer(text)]
print(matches) # 输出可能为 ['06:41:15', '06:42:23']
正则表达式还有一些常用的后缀运算符,用于表达重复:
| 后缀运算符 | 含义 | 示例 |
| ---- | ---- | ---- |
| (*)
| 前一个正则表达式可重复任意次数,包括零次,贪婪模式 | r'.*\d'
|
| (*?)
| 前一个正则表达式可重复任意次数,非贪婪模式 | r'.*?\d'
|
| (+)
| 前一个表达式可重复一次或多次,贪婪模式 | r'\d+'
|
| (+?)
| 前一个表达式可重复一次或多次,非贪婪模式 |