2024-10-01 04:47:03 发布
网友
代码如下
str="baaaacbd" pattern = re.compile(r"a*") mat = pattern.search(str) print mat.group()
输出什么都不是!真烦人!为什么?你知道吗
首先,不要使用python内置类型名作为变量名。其次,a*表示匹配字符a的0个或多个,re.search()将返回模式的第一个匹配项,即0个匹配项。您可以使用groups()查看所有匹配项:
a*
a
re.search()
groups()
In [34]: pattern = re.compile(r"(a*)") In [35]: mat = pattern.search(s) In [36]: print(mat.group()) In [37]: print(mat.groups()) ('',)
或者使用a+匹配一个或多个字符,在本例中,这是您想要的:
a+
In [38]: pattern = re.compile(r"a+") In [39]: mat = pattern.search(s) In [41]: print(mat.group()) aaaa
首先,不要使用python内置类型名作为变量名。其次,
a*
表示匹配字符a
的0个或多个,re.search()
将返回模式的第一个匹配项,即0个匹配项。您可以使用groups()
查看所有匹配项:或者使用
a+
匹配一个或多个字符,在本例中,这是您想要的:相关问题 更多 >
编程相关推荐