re.findall中flags参数用法
时间: 2024-02-01 16:02:49 浏览: 24
在 Python 的 `re` 模块中,`re.findall()` 函数用于在一个字符串中查找匹配某个正则表达式的所有子串,并将这些子串以列表的形式返回。`re.findall()` 函数的语法如下:
```python
re.findall(pattern, string, flags=0)
```
其中,`pattern` 表示要匹配的正则表达式,`string` 表示要匹配的字符串,`flags` 表示正则表达式的匹配模式。`flags` 参数是可选的,如果不指定,默认为 0。
`flags` 参数可以控制正则表达式的匹配模式,常用的 `flags` 参数有:
- `re.IGNORECASE` 或 `re.I`:忽略大小写。
- `re.MULTILINE` 或 `re.M`:多行匹配,改变 `^` 和 `$` 的行为。
- `re.DOTALL` 或 `re.S`:点任意匹配,允许 `.` 匹配换行符。
- `re.UNICODE` 或 `re.U`:启用 Unicode 匹配。
- `re.VERBOSE` 或 `re.X`:忽略空白和注释。
可以在 `flags` 参数中指定多个参数,多个参数之间可以用按位或运算符 `|` 连接。例如,如果要忽略大小写并启用多行匹配,可以这样写:
```python
re.findall(pattern, string, flags=re.IGNORECASE | re.MULTILINE)
```