我有一个字符串 - >“abcabcabclslslsokjokjokj” 我需要找到一个算法,它能够识别所有的复发(或至少一个最长的唯一)正则表达式 - 正则表达式查找最长独特的非重叠周期在一个字符串
我找到了(\w+?)\1+
(适用于Ruby)适用于单次复发的魅力。
'abcabcabcabc' #=> 'abc'
但失败了'ababcababcababcababcababcababc'
,其中预期的结果是ababc
但出来是ab
如果我错了,什么是找到正确的方法: -
- 一是独特循环模式(
ababcababcababcjkjkjkjk
=>ababc
) 2(奖金)。字符串中的所有唯一非重叠的环状repititions,(ababcababcababcabhabhabhlklklk
=>ababc
,abh
,lk
)
使用一个贪婪的量词:['(\ w +)\ 1 +'](https://regex101.com/r/ycPW8K/2) –
为什么你首先使用惰性量词? –