Python 中 re.match()、re.search() 和 re.findall() 方法有什么区别?


re.match()re.search()re.findall()Python 模块 re (Python 正则表达式) 的方法。

re.match() 方法

re.match() 方法 仅在字符串开头匹配。例如,在字符串“TP Tutorials Point TP”上调用 match() 并查找模式“TP”将匹配。

示例

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

输出

TP

re.search() 方法

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

示例

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

输出

Tutorials

re.findall() 方法

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

示例

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

输出

TP

更新于: 2023-11-02

4K+ 浏览量

启动你的 职业生涯

通过完成课程获得认证

开始学习
广告