好的,请原谅我的问题,它可能没有以最好的方式问!确定字符串列表中的子串集合
我在字典中有一组56个条目。这些键表示由字典中的字符串表示的功能组合。我根据特性将字符串字典细分为集合,并将这些值放入列表中。我的代码工作到这一点。
我现在有困难了解如何将列表中的每个字符串相互比较以找出最大共享字符串是什么。所以,我的名单看起来像:
[ngali,ngali,ngalina,ngalina,ngina,ngina,nginana]
所以 'NG' 是我在这种情况下,后是。到目前为止,我只能找到参考找到像Levinshtein和fuzz之类的字符串距离。
是否有任何'整洁'的方式来编码这个或我注定要编写嵌套循环嵌套循环,以通过所有可能的组合?
我使用Python 3
它看起来像你实现最长公共子串的(它似乎前与子)的变化。也许这将是有用的? https://en.wikibooks.org/wiki/Algorithm_Implementation/Strings/Longest_common_substring#Python_3 – Raizuri
所以我早先通读了这篇文章,如果我错了,请纠正我的错误,但是如果代码片段从最开始的时候才会找到最长的公共子字符串这个词的开头,在我看来,它可能在这个词的任何地方。我猜我将不得不创建另一个循环,以考虑滑动起点...... – Ant