首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >如何判断字符串是否在Python中重复?

如何判断字符串是否在Python中重复?
EN

Stack Overflow用户
提问于 2015-04-06 23:02:09
回答 13查看 59.7K关注 0票数 362

我正在寻找一种方法来测试给定的字符串是否对整个字符串重复。

示例:

代码语言:javascript
复制
[
    '0045662100456621004566210045662100456621',             # '00456621'
    '0072992700729927007299270072992700729927',             # '00729927'
    '001443001443001443001443001443001443001443',           # '001443'
    '037037037037037037037037037037037037037037037',        # '037'
    '047619047619047619047619047619047619047619',           # '047619'
    '002457002457002457002457002457002457002457',           # '002457'
    '001221001221001221001221001221001221001221',           # '001221'
    '001230012300123001230012300123001230012300123',        # '00123'
    '0013947001394700139470013947001394700139470013947',    # '0013947'
    '001001001001001001001001001001001001001001001001001',  # '001'
    '001406469760900140646976090014064697609',              # '0014064697609'
]

是重复自己的字符串,并且

代码语言:javascript
复制
[
    '004608294930875576036866359447',
    '00469483568075117370892018779342723',
    '004739336492890995260663507109',
    '001508295625942684766214177978883861236802413273',
    '007518796992481203',
    '0071942446043165467625899280575539568345323741',
    '0434782608695652173913',
    '0344827586206896551724137931',
    '002481389578163771712158808933',
    '002932551319648093841642228739',
    '0035587188612099644128113879',
    '003484320557491289198606271777',
    '00115074798619102416570771',
]

就是那些没有的例子。

给出的字符串的重复部分可能很长,字符串本身可以是500个或更多个字符,因此循环遍历每个字符试图构建一个模式,然后检查模式与字符串的其余部分似乎非常缓慢。把它乘以数百个字符串,我看不出任何直观的解决方案。

我已经对regexes做了一些研究,当你知道你在寻找什么,或者至少知道你要寻找的模式的长度时,它们似乎是很好的。不幸的是我都不知道。

如何判断字符串是否在重复,如果是,最短的重复子序列是什么?

EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/29481088

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档