gpt4 book ai didi

regex - 如何在 python 中使用正则表达式正确匹配序列?

转载 作者:行者123 更新时间:2023-12-04 15:43:32 25 4
gpt4 key购买 nike

我有一个字符串,s="abaaaababbb"。

我正在使用 findall 方法,我想知道 (ab)+ 的所有出现。我使用的代码是:

import re
s = "abaaaababbb"
x = re.findall("[ab]+",s)
print(x)

输出:['abaaaababbb']

相反,我想要这样的输出:['ab', 'abab']

如何写出正确的正则表达式?

最佳答案

您在问题中提到的正则表达式 ((ab)+) 几乎是正确的。

您只需要将捕获组设置为非捕获组即可:

(?:ab)+

这是因为如果您在正则表达式中有任何捕获组,findall 将返回所有(而不是所有匹配项)。

关于regex - 如何在 python 中使用正则表达式正确匹配序列?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56864539/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com