? 是非贪婪模式的通配符,它意味着匹配任意字符串,但尽可能少地匹配字符。举个例子,假设有这样的字符串 "abababab" 和正则表达式 "a.?b",那么它将匹配 "ab"、"ab" 和 "ab"。另一方面,如果使用贪婪模式,即正则表达式 "a.*b",那么它将匹配整个字符串 "abababab"。下面是一个示例代码,可以用来演示 *? 的使用方式:
import re
text = "Hello world. It's a beautiful day." pattern = r'\b\w*?e\w*?\b'
match = re.findall(pattern, text) print(match)
输出结果为:['Hello', 'beautiful']
上一篇:不知道正确地将一个长参数分成多行
下一篇:不知道这些错误是从哪里发生的