Python 正则表达式中的 re.search() 和 re.findall() 有何不同?


re.search() 方法类似于 re.match() 方法,但它并不限制我们仅查找字符串开头的匹配项。

示例

import re
result = re.search(r'Tutorials', 'TP Tutorials Point TP')
print result.group()

输出

Tutorials

这里可以看到,search() 方法能够从字符串的任何位置查找模式。

re.findall() 方法有助于获取所有匹配模式的列表。它从给定字符串的开头或结尾开始搜索。如果我们使用 findall 方法在给定字符串中搜索模式,它将返回模式的所有匹配项。在搜索模式时,建议始终使用 re.findall(),它的功能类似于 re.search() 和 re.match() 这两个方法。

示例

import re
result = re.search(r'TP', 'TP Tutorials Point TP')
print result.group()

输出

TP


更新于:2020 年 6 月 13 日

1000+ 浏览量

启动你的 事业

完成课程获得认证

开始
广告