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