在Python字符串中查找重复模式

时间:2014-03-20 03:53:57

标签: python regex

假设我有这个字符串

s =' 123123123'

我可以注意到' 123'子串正在重复。

此处=' 1234'

子字符串将是' 1234'没有重复。

s =' 11111'

子字符串将是' 1'

如何使用Python获得此功能?任何提示?

1 个答案:

答案 0 :(得分:2)

strings = ['123123123', '1234', '11111']
import re
pattern, result = re.compile(r'(.+?)\1+'), []
for item in strings:
    result.extend(pattern.findall(item) or [item])
print result
# ['123', '1234', '1']

Regular expression visualization

Debuggex Demo

您可以看到RegEx here

的说明