正则表达式-匹配任何单个字符
文本模式字符串都是精确匹配,不过这种精确匹配的作用不打,在正则表达式中,最常用的是匹配一类字符串,而不是一个字符串。所以就需要使用一些特殊符号表示一类字符串。下面将介绍第1个可以匹配一类字符串的特殊符号:点(.
)。这个符号可以匹配任意一个单个字符。
m = re.match('.ind','bind') # 匹配成功
在上面的代码中,文本模式字符串是’.ind’,第1个字符是(.
),表示可以匹配任意一个字符串。也就是说,待匹配的字符串,只要以’.ind’开头,都会匹配成功,其中.
可以表示任意一个字符,例如,‘bind’、‘xind’、‘5ind’都可以和文本模式字符串’.ind’成功匹配。
使用.
符号会带来一个问题,如果要匹配真正的点(.)字符,应该如何做呢?要解决这个问题,需要使用转义符\
或r
。
m = re.match('\.ind','bind') # 匹配失败
在上面的代码中,由于使用了转义符修饰点.
符号,所以这个点就变成了真正的字符点(.),所以匹配’bind’很显然就失败了,应该把待匹配字符串修改成’.ind’才会匹配成功。
[例 11.4] 本例使用了.
符号匹配任意一个字符,并使用转义符\
将点符号变成真正的(.)点字符,通过这个例子可以更彻底的理解点符号的用法。</