gpt4 book ai didi

python - 如何计算字符串中子字符串的连续重复次数?

转载 作者:行者123 更新时间:2023-12-04 11:17:21 25 4
gpt4 key购买 nike

我需要在字符串中找到子字符串的连续(非重叠)重复。我可以计算它们但不是连续的。例如:

string = "AASDASDDAAAAAAAAERQREQREQRAAAAREWQRWERAAA"
substring = "AA"
在这里, "AA"在字符串的开头重复一次,然后是 4 次,然后是 2 次,以此类推。
我应该选择最大的一个,在这个例子中 - 4 次。
我怎样才能做到这一点?

最佳答案

Regular expressions在搜索字符串时闪耀。在这里您可以找到一个或多个的所有组 AA(?:AA)+ (?:只是告诉引擎解释括号仅用于分组。

一旦你有了组,你就可以使用 max()根据长度找到最长的( len() )。

import re

s = "AASDASDDAAAAAAAAERQREQREQRAAAAREWQRWERAAA"

groups = re.findall(r'(?:AA)+', s)
print(groups)
# ['AA', 'AAAAAAAA', 'AAAA', 'AA']

largest = max(groups, key=len)
print(len(largest) // 2)
# 4

关于python - 如何计算字符串中子字符串的连续重复次数?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/61131768/

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