运用re.findall函数查找所有匹配,设计一个正则表达式,提取出字符串中含字母’o’的全部单词(数字和标点符号都不是单词部分)。这个字符串为s="I like Python programming 123 because it is 456 simple and elegant."
时间: 2024-02-09 14:11:33 浏览: 144
python中正则表达式 re.findall 用法
可以使用如下正则表达式来匹配含字母'o'的全部单词:
```python
import re
s = "I like Python programming 123 because it is 456 simple and elegant."
pattern = r'\b\w*[oO]\w*\b'
matches = re.findall(pattern, s)
print(matches)
```
解释一下这个正则表达式:
- `\b` 表示单词边界,即单词的开头或结尾
- `\w*` 表示零个或多个单词字符,包括字母、数字和下划线
- `[oO]` 表示字母'o',大小写不敏感
- `\w*` 同上
- `\b` 同上
最后,使用re.findall()函数找到s字符串中所有符合条件的子串,并存储在matches列表中。输出结果为:`['Python', 'programming', 'because', 'simple']`。
阅读全文