Python 正则表达式中 re.search() 和 re.findall() 方法有什么区别?

pythonserver side programmingprogramming

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

相关文章


有用资源