4

我指的是re.findall函数的文档:

“结果中包含空匹配项”是什么意思。?

4

4 回答 4

3

它只是意味着当匹配是“”或空字符串时,它包含在结果列表中。

于 2019-09-30T12:22:38.783 回答
3

当您使用与空字符串匹配的组时会发生这种情况,例如:

 print(re.findall(r'(\w)(\d?)(\w)', "bc"))

输出:

[('b', '', 'c')]

这里组(\d?)匹配''并包含在结果中。

于 2019-09-30T12:26:49.120 回答
2

零长度匹配,或空匹配。

正则表达式由边界定义或锚点组成,例如 operator ^。一旦锚被击中,你就有了一个匹配,它可以是“空的”,紧随其后的是另一个锚。

于 2019-09-30T12:28:05.577 回答
-1

如果主题是空字符串,则对于任何可以找到...的正则表达式,fullmatch() 的计算结果为 True 整个正则表达式匹配不包含在元组中,除非您将整个 ... 出现在正则表达式中原始字符串不提供逃避它的方法。

于 2019-09-30T12:26:35.753 回答