搜索

pdf文档 Python 3.7.13 正则表达式 HOWTO

392.75 KB 17 页 0 下载 54 浏览 0 评论 0 收藏
语言 格式 评分
中文(简体)
.pdf
3
摘要
本文档是关于在Python中使用re模块进行正则表达式的入门教程。它介绍了正则表达式的使用方法,包括编译、匹配、替换等功能,并讨论了正则表达式的元字符、重复限定符、字符类以及常见问题。文档强调了正则表达式在字符串操作中的强大功能,同时也提醒读者注意反斜杠转义问题、模块级函数的使用以及贪婪与非贪婪匹配的差异。
AI总结
# Python 3.7.13 正则表达式 HOWTO 总结 ## 概述 正则表达式(RE)是一种嵌入在 Python 中的微小编程语言,通过 `re` 模块提供。它允许你定义字符串的匹配规则,并用于匹配、搜索、替换或分割字符串。正则表达式模式会被编译成字节码,由高效的 C 编写的引擎执行。尽管正则表达式功能强大,但并非所有字符串处理任务都适合使用它,尤其是复杂任务可能需要使用 Python 代码。 --- ## 简单模式 ### 2.1 匹配字符 - 大多数字符(如 `a`、`b`)会匹配自己。 - 元字符(如 `.`、`^`、`$`、`*` 等)具有特殊含义,需转义后才能匹配自身。 - 字符类(如 `[a-z]`)匹配指定范围内的任意字符。 - 补集字符类(如 `^a-z`)匹配不在指定范围内的字符。 - 特殊序列(如 `\d`、`\w`)匹配特定字符集合。 ### 2.2 重复 - `*` 匹配零次或多次。 - `+` 匹配一次或多次。 - `?` 匹配零次或一次。 - `{m,n}` 匹配至少 `m` 次,最多 `n` 次。 - 贪婪匹配默认尽可能多地匹配,非贪婪匹配则尽可能少地匹配。 --- ## 使用正则表达式 ### 3.1 编译正则表达式 - 使用 `re.compile()` 将正则表达式编译为模式对象,支持后续多次调用。 - 推荐使用原始字符串(`r''`)避免反斜杠转义问题。 ### 3.2 反斜杠灾难 - 正则表达式中的反斜杠用于转义元字符,但在 Python 字符串中需再次转义。 - 使用原始字符串(`r''`)简化反斜杠处理。 ### 3.3 应用匹配 - `match()` 检查正则是否从字符串开头匹配。 - `search()` 扫描字符串,查找任意位置的匹配。 - `findall()` 和 `finditer()` 返回所有匹配的子字符串或迭代器。 - `sub()` 用于搜索和替换字符串,支持替换函数。 ### 3.4 模块级别函数 - `re` 模块提供顶级函数(如 `re.match()`、`re.sub()`),方便直接使用。 ### 3.5 编译标志 - 标志(如 `re.IGNORECASE`、`re.DOTALL`)可修改正则表达式行为。 - 多个标志可通过按位或运算组合使用。 --- ## 更多模式能力 ### 4.1 更多元字符 - 元字符(如 `|`、`(`、`)`)用于分组、选择或重复。 ### 4.2 分组 - 使用 `()` 创建捕获组,便于引用或处理子模式。 ### 4.3 非捕获和命名组 - 非捕获组 `?:` 仅用于分组,不捕获内容。 - 命名组(如 `(?P)`)便于引用特定组。 ### 4.4 前向断言 - `(?=...)` 和 `(?
P1
P2
P3
P4
P5
P6
P7
P8
P9
P10
P11
P12
下载文档到本地,方便使用
- 可预览页数已用完,剩余 5 页请下载阅读 -
文档评分
请文明评论,理性发言.