Lines Matching defs:damerau_levenshtein
386 /// use strsim::damerau_levenshtein;
388 /// assert_eq!(2, damerau_levenshtein("ab", "bca"));
390 pub fn damerau_levenshtein(a: &str, b: &str) -> usize {
411 1.0 - (damerau_levenshtein(a, b) as f64) / (a.chars().count().max(b.chars().count()) as f64)
846 assert_eq!(0, damerau_levenshtein("", ""));
851 assert_eq!(0, damerau_levenshtein("damerau", "damerau"));
856 assert_eq!(7, damerau_levenshtein("", "damerau"));
861 assert_eq!(7, damerau_levenshtein("damerau", ""));
866 assert_eq!(2, damerau_levenshtein("ca", "abc"));
871 assert_eq!(3, damerau_levenshtein("damerau", "aderua"));
876 assert_eq!(3, damerau_levenshtein("aderua", "damerau"));
881 assert_eq!(3, damerau_levenshtein("öঙ香", "abc"));
882 assert_eq!(3, damerau_levenshtein("abc", "öঙ香"));
887 assert_eq!(6, damerau_levenshtein("damerau", "aderuaxyz"));
892 assert_eq!(6, damerau_levenshtein("aderuaxyz", "damerau"));
897 assert_eq!(5, damerau_levenshtein("Stewart", "Colbert"));
902 assert_eq!(4, damerau_levenshtein("abcdefghijkl", "bacedfgihjlk"));
909 assert_eq!(36, damerau_levenshtein(a, b));
914 assert_eq!(1, damerau_levenshtein("foobar", "ofobar"));
919 assert_eq!(1, damerau_levenshtein("specter", "spectre"));
924 assert_eq!(3, damerau_levenshtein("a cat", "an abct"));