Python Regex [.]+ 应表示任何单个或重复字符


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

最新更新