re.findall用法
时间: 2023-08-12 14:27:56 浏览: 45
`re.findall()` 是 Python 的 re 模块中的一个函数,用于在字符串中查找所有匹配的子串,并以列表形式返回。
函数语法:`re.findall(pattern, string, flags=0)`
其中,`pattern` 是正则表达式模式,`string` 是要进行匹配的字符串,`flags` 是可选参数,用于控制正则表达式匹配的方式。
示例:
```python
import re
# 查找字符串中所有的数字
string = 'hello 123 world 456'
nums = re.findall('\d+', string)
print(nums) # ['123', '456']
# 查找字符串中所有的单词
string = 'The quick brown fox jumps over the lazy dog.'
words = re.findall('\w+', string)
print(words) # ['The', 'quick', 'brown', 'fox', 'jumps', 'over', 'the', 'lazy', 'dog']
# 查找字符串中所有的邮箱地址
string = 'My email is abc@example.com, and my friend\'s email is xyz@example.com.'
emails = re.findall('\S+@\S+', string)
print(emails) # ['abc@example.com,', 'xyz@example.com.']
```
注意,`re.findall()` 只会返回匹配的子串列表,如果要获取更多信息,例如匹配的位置等,可以使用 `re.finditer()` 函数。
阅读全文