我有两个字符串。
它们不是彼此的子串,但它们之间存在重叠区域。
my $str1 = "AAAAAAAAAABBBBBBBBCC";
my $str2 = "BBBBBBBBCCZZZZZZZZZZ";
我想找到这个重叠区域。
"AAAAAAAAAABBBBBBBBCC"
"BBBBBBBBCCZZZZZZZZZZ"
Overlap is "BBBBBBBBCC"
我广泛搜索了 CPAN 和谷歌。
有很多关于“编辑距离”方法的模块,例如Algorithm::Diff
,Text::Levenshtein
或Text::OverlapFinder
和String::Similarity
。但是,它们不是我想要的。
字符串不应间隔(插入或删除任何字符)或替换。它类似于生物信息学中的序列比对,但没有间隙“开放”和“扩展”许可,除非在两个极端情况下。
我想知道是否有人找到了解决方案或解决方法。