java – 从两个字符串中查找类似子字符串的方法

我正在使用这段
Java代码来查找类似的字符串:

if(str1.indexof(str2)> = 0 || str2.indexof(str1)> = 0)…….

但是使用str1 =“pizzabase”和str2 =“namedpizzaowl”它不起作用.

如何找到常见的子串,即“披萨”?

最佳答案 如果你的算法说两个字符串在包含一个公共子字符串时是相似的,那么这个算法将总是返回true;空字符串“”通常是每个字符串的子字符串.此外,确定字符串之间的相似程度更有意义,并返回一个数字而不是布尔值.

这是用于确定字符串(或更一般地,序列)相似性的良好算法:http://en.wikipedia.org/wiki/Levenshtein_distance.

点赞