String 是否有一个函数返回两个字符串之间的差异计数?

String 是否有一个函数返回两个字符串之间的差异计数?,string,count,compare,rust,String,Count,Compare,Rust,我将要和长度相等的字符串进行比较。然后我需要计算他们之间的差异。我会开始手工操作——但既然有这样一个方法工具箱,我想知道是否有一个函数可以计算发生的差异?或者创建一个集合,我可以对其中的元素进行计数?您可以使用板条箱。它提供了各种字符串差分方法,如Hamming、Levenshtein、Damerau Levenshtein、Jaro和Jaro Winkler。我个人喜欢Damerau-Levenshtein差异,它计算需要交换的相邻字符数,以及需要删除、插入或替换的字符数,以便将一个字符串转换

我将要和长度相等的字符串进行比较。然后我需要计算他们之间的差异。我会开始手工操作——但既然有这样一个方法工具箱,我想知道是否有一个函数可以计算发生的差异?或者创建一个集合,我可以对其中的元素进行计数?

您可以使用板条箱。它提供了各种字符串差分方法,如Hamming、Levenshtein、Damerau Levenshtein、Jaro和Jaro Winkler。我个人喜欢Damerau-Levenshtein差异,它计算需要交换的相邻字符数,以及需要删除、插入或替换的字符数,以便将一个字符串转换为另一个字符串

extern crate strsim;
let difference = strsim::damerau_levenshtein(a, b);

汉明距离的实现非常简单:

str_a.chars().zip(str_b.chars()).filter(|x| x.0!=x.1).count()

你在找编辑距离吗?有一小部分板条箱提供了用于计算的例程,通常使用Levenshtein算法。不,你可以/需要自己写一个。Ha hamming正是我必须要做的事情-但是使用板条箱来解决这个问题有点骗人。但我会看看他们的解决方案。Mybe我可以找到我正在寻找的函数/方法。谢谢