不应该将以下正则表达式的a*
与字符串中的a
匹配,而d
只留下ad$
,因此pattern = r"a*ad$"
print(re.search(pattern, "ad"))
不应该{0}比赛,对吗?为什么这是真的?
{{1}}
答案 0 :(得分:0)
a*
是否应该与字符串中的a
匹配?
不,因为*
表示a
可以匹配零或更多次,所以''
空字符串也匹配表达。在初始空字符串之后留下'ad'
以匹配表达式的其余部分。
正则表达式会考虑这两个选项(''
,空字符串和'a'
满足a*
模式)。
如果您希望模式至少匹配 ,请使用a+
。