re
模块是 Python 中用于处理正则表达式的标准库。它提供了一组函数,可以用来进行文本的模式匹配和搜索操作。下面是一些 re
模块常用的函数和用法:
-
re.match(pattern, string, flags=0):
- 尝试从字符串的开头匹配模式,如果匹配成功则返回一个匹配对象,否则返回
None
。 - 示例:
pythonCopy Code
import re pattern = r'ab*' result = re.match(pattern, 'a')
- 尝试从字符串的开头匹配模式,如果匹配成功则返回一个匹配对象,否则返回
-
re.search(pattern, string, flags=0):
- 在整个字符串中搜索并返回第一个匹配的位置,如果匹配成功则返回一个匹配对象,否则返回
None
。 - 示例:
pythonCopy Code
import re pattern = r'def' result = re.search(pattern, 'abcdefg')
- 在整个字符串中搜索并返回第一个匹配的位置,如果匹配成功则返回一个匹配对象,否则返回
-
re.findall(pattern, string, flags=0):
- 返回字符串中所有与模式匹配的子串组成的列表,如果没有匹配,则返回空列表。
- 示例:
import re pattern = r'\d+' result = re.findall(pattern, '12 drummers drumming, 11 pipers piping')
-
re.sub(pattern, repl, string, count=0, flags=0):
- 使用指定的替换字符串
repl
替换字符串中与模式匹配的部分。可选参数count
用于指定最大替换次数。 - 示例:
import re pattern = r'blue|white|red' result = re.sub(pattern, 'color', 'blue socks and red shoes')
- 使用指定的替换字符串
-
re.compile(pattern, flags=0):
- 将正则表达式的字符串形式编译为正则表达式对象,以便重复使用同一模式进行匹配操作。
- 示例:
import re pattern = re.compile(r'\d+') result = pattern.findall('12 drummers drumming, 11 pipers piping')