首页 > 代码库 > Python正则表达式之findall疑点

Python正则表达式之findall疑点

在findall中使用()进行分组时,得出的结果会优先提取分组的,比如下面这个例子

1 In [46]: re.findall(r"www.(baidu|163).com", "www.baidu.com")
2 Out[46]: [baidu]

我们如何实现得出的结果是www.baidu.com呢

实现的方法是在分组的开头加上"?:"

1 In [47]: re.findall(r"www.(?:baidu|163).com", "www.baidu.com")
2 Out[47]: [www.baidu.com]

 

Python正则表达式之findall疑点