Python 正则表达式核心用法与实战示例
字符串处理是编程中的基础且高频场景,正则表达式(Regular Expression)提供了简洁高效的文本匹配方案。Python 内置的 re 模块为开发者提供了完整的正则支持。本文将系统梳理 Python 正则表达式的常用语法、函数及实战技巧,帮助读者掌握这一核心工具。
1. 基础匹配函数
1.1 查找第一个匹配项
使用 re.search() 在字符串中查找第一个符合模式的位置。如果找到,返回一个 Match 对象;否则返回 None。
import re
s = 'i love python very much'
pattern = 'python'
result = re.search(pattern, s)
if result:
print(f"匹配位置:{result.span()}") # 输出:(7, 13)
print(f"匹配内容:{result.group()}") # 输出:python
1.2 查找所有匹配项
使用 re.finditer() 或 re.findall() 获取所有匹配结果。
s = '山东省潍坊市青州第 1 中学高三 1 班'
pattern = '1'
# finditer 返回迭代器,包含 Match 对象
for match in re.finditer(pattern, s):
print(f"索引:{match.span()}, 内容:{match.group()}")
# 输出:
# 索引:(9, 10), 内容:1
# 索引:(14, 15), 内容:1
2. 字符类与量词
2.1 数字匹配
\d 代表任意数字(等价于 [0-9]),配合量词可匹配多位数。
s = '一共 20 行代码运行时间 13.59s'
pattern = r'\d+' # \d+ 表示匹配一个或多个数字
matches = re.findall(pattern, s)
print(matches)


