查找长字符串是否包含任何模式

Find if long string of chars contains any patterns

例如,我有一长串字符 - "wdllwdwwwlldd" 该字符串只包含相同的字符 -wld(试着猜猜我在做什么;))

字符串会很长,大约 420 个字符。

我想查找字符串中的任何模式(如果存在)。 例如,如果字符串是 - "wllddwllddwlldd" 那么 "wlldd" 就是找到的模式。

所以我有点想在字符串中找到任何重复的序列。

经过一些研究,在这些问题上似乎经常提到后缀树和后缀数组。

这是正确的还是有其他方法可以做到这一点?

我可以看出这是一项相当大的任务,可能需要很长时间。

提前致谢。

所以你想要的是从某个字符串中提取所有出现的某个模式,我明白你的意思了吗?如果是这样,则讨论了非常相似的内容 in this thread。它至少应该让你朝着正确的方向前进。

在您的情况下,使用 w+l+d+ 等正则表达式应该可以解决问题。

编辑

问题更清楚了......所以你正在寻找的算法在 this post

中有详细解释