Hugo van Kemenade:软弃用 re.match()
"re.match()" 尝试在字符串的开头匹配模式。如果模式在开头找到,则返回一个匹配对象;否则返回 None。re.match("pi", "pi") 和 re.match("pi", "pie") 均返回匹配结果,因为 "pi" 位于这些字符串的开头。然而,re.match("pi", "api") 和 re.match("pi", "magpie") 不匹配,因为 "pi" 并未出现在字符串的开头。相比之下,re.search() 会扫描整个字符串,并返回模式首次出现的位置,无论其位置如何。re.fullmatch() 要求整个字符串从头到尾精确匹配模式。Python 3.15 引入了 re.prefixmatch() 作为 re.match() 的别名,旨在通过其名称提供更清晰的语义。re.match() 已在 Python 3.15 中软弃用,意味着不应在新代码中使用,但现有代码仍可安全使用。如果意图是仅在开头匹配,新代码应优先使用 re.prefixmatch()。