Python中的re模块是用来进行正则表达式操作的工具包。re模块提供了很多函数和方法,用于对字符串进行匹配、查找、替换等操作。
1. re.match(pattern, string, flags=0)
从字符串的起始位置开始匹配pattern,如果匹配成功,则返回一个匹配对象;否则返回None。
2. re.search(pattern, string, flags=0)
在字符串中查找第一个符合pattern的子串,如果找到则返回一个匹配对象;否则返回None。
3. re.findall(pattern, string, flags=0)
在字符串中查找所有符合pattern的子串,并以列表的形式返回。
4. re.finditer(pattern, string, flags=0)
在字符串中查找所有符合pattern的子串,并以迭代器的形式返回。
5. re.sub(pattern, repl, string, count=0, flags=0)
在字符串中查找所有符合pattern的子串,并将其替换为repl。count参数控制替换的次数,默认为0,表示替换所有匹配到的子串。
6. re.split(pattern, string, maxsplit=0, flags=0)
根据pattern对字符串进行分割,并返回分割后的子串列表。maxsplit参数控制分割的次数,默认为0,表示分割所有匹配到的子串。
7. pattern的语法规则
- 字符:匹配该字符
- \d:匹配任意数字(0-9)
- \D:匹配任意非数字字符
- \w:匹配任意字母、数字、下划线字符
- \W:匹配任意非字母、数字、下划线字符
- \s:匹配任意空白字符
- \S:匹配任意非空白字符
- ^:匹配字符串的起始位置
- $:匹配字符串的结束位置
- .:匹配任意字符(除换行符外)
- *:匹配前一个字符零次或多次
- +:匹配前一个字符一次或多次
- ?:匹配前一个字符零次或一次
- {n}:匹配前一个字符n次
- {n,}:匹配前一个字符至少n次
- {n,m}:匹配前一个字符至少n次,最多m次
以上是re模块常用的几个函数和一些常用的正则表达式语法规则。使用re模块可以方便地进行字符串的匹配、查找、替换等操作。