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

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

示例

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

输出结果

Tutorials

在这里,您可以看到search()method可以从字符串的任何位置找到模式。

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

示例

import re
result = re.search(r'TP', 'TP nhooo.com TP')
print result.group()

输出结果

TP