正则表达式的高效应用
正则表达式的应用
正则表达式(Regular Expression,简称 Regex) 是处理字符串的“瑞士军刀”。它通过一套特定的规则(模式)来描述、匹配和处理符合特定特征的文本。在 Daoman Python AI 的网页爬虫、日志分析以及自动化办公脚本中,正则表达式是不可或缺的工具。
1. 正则表达式核心语法
正则表达式由普通字符(如字母 a)和元字符(如 \d)组成。元字符赋予了正则强大的描述能力。
常用元字符速查
转义提示:如果要匹配正则中的特殊符号本身(如
.或(),需要加反斜杠,写成\.或\(。
2. Python 中的 re 模块
Python 通过内置的 re 模块提供对正则的支持。
3. 实战案例演示
案例 1:数据清洗(敏感词过滤)
利用 re.sub 可以轻松实现关键词屏蔽,并通过 re.IGNORECASE 忽略大小写。
案例 2:信息提取(手机号识别)
使用 re.findall 从杂乱的文本中提取符合特征的数据。
案例 3:复杂拆分(多分隔符)
当字符串中有多种标点符号需要拆分时,str.split 无法胜任,但正则可以。
4. 贪婪与非贪婪匹配
这是初学者最容易掉坑的地方:
- 贪婪模式(默认):尽可能多地匹配。
- 非贪婪模式(加
?):尽可能少地匹配。
总结
- 原始字符串 (
r''):写正则时务必在引号前加r,避免 Python 转义字符与正则转义冲突。 - 预编译:如果一个正则要在循环中使用上千次,请先用
re.compile()。 - 工具推荐:建议使用在线工具(如 regex101.com)进行可视化调试。

