x='andi'
print re.search('an[.]+',x)


返回None。是否假设要匹配字符串。
在文档中,.(点)可以代表任何字符。 +表示1个或多个重复。因此,对于[.]+,它应该与字符串中的d相匹配。

谁能解释?为什么返回None

最佳答案

使用时:

print re.search('an[.]+', x)


它与文字点匹配,因为点位于[ ]内,即字符类,其中特殊的正则表达式元字符失去了特殊的含义。

您应该使用:

print re.search('an.+', x)


例:

>>> print re.search('an.+', x).group()
andi

关于python - python regex [。] +应该代表任何单个或重复字符,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/35732614/

10-11 09:00
查看更多