{site_name}

{site_name}

🌜 搜索

match() 和 search() 都是 Python 中正则表达式模块 re

Python 𝄐 0
pythonmatch和search区别,pythonmatch和search
match() 和 search() 都是 Python 中正则表达式模块 re 的方法,用于在文本中搜索匹配某个模式的字符串。它们之间的差别在于匹配的位置不同。

match() 方法从字符串的开头开始匹配模式,只返回第一个匹配项(如果存在)。如果模式不在字符串的开头,则匹配失败。而 search() 方法在整个字符串中搜索模式,在找到第一个匹配项后停止并返回结果。

下面是两个例子:


import re

text = "Hello, world!"

# 使用 match() 方法查找以 H 开头的单词
result = re.match(r'H\w+', text)

if result:
print("Match found:", result.group())
else:
print("No match")

# 使用 search() 方法查找以 w 结尾的单词
result = re.search(r'\w+w$', text)

if result:
print("Match found:", result.group())
else:
print("No match")


输出:


Match found: Hello
Match found: world


在第一个例子中,使用 match() 方法查找以 H 开头的单词,因为字符串 text 的开头是 H ,所以匹配成功,并返回匹配的字符串 Hello。

在第二个例子中,使用 search() 方法查找以 w 结尾的单词,因为字符串 text 中有以 w 结尾的单词 world,所以匹配成功,并返回匹配的字符串 world。