gpt4 book ai didi

python 正则表达式匹配不正确

转载 作者:太空宇宙 更新时间:2023-11-04 10:02:50 24 4
gpt4 key购买 nike

我有一个字符串

"aaabbbbccc"

我要找回["aaa", "bbbb", "ccc"]

根据这篇文章 What regex can match sequences of the same character?

In [8]: re.findall('(\w)\1+', s)
Out[8]: []

我想我使用在线正则表达式解析器成功检索到了这个模式。

最佳答案

这里有两件事你应该考虑:

1) 在定义正则表达式时使用原始字符串文字(或对模式内的 \ 进行两次转义,以便 \1 可以被解析为反向引用而不是八进制字符符号)和

2) 使用re.finditer此处获取自 re.findall 以来的完整匹配值将仅获取使用捕获组捕获的值:

import re
s = 'aaabbbbccc'
print([x.group() for x in re.finditer(r'(\w)\1+', s)])

参见 Python demo .

此处,x.group() 是存储在 re.MatchObject 中的整个匹配项,由 re.finditer 返回。

关于python 正则表达式匹配不正确,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42635184/

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