Skip to content

Latest commit

 

History

History
46 lines (35 loc) · 1.52 KB

File metadata and controls

46 lines (35 loc) · 1.52 KB

distance

This is a rust library for approximate string matching algorithms. Possible applications for this are fuzzy string searching, spell checkers, spam filters, etc.

It is applicable in no_std environment given alloc.

Algorithms

All algorithms support UTF-8 encoded strings.

Add as dependency

distance is available on crates.io.

[dependencies]
distance = "0.4"

Usage

use distance::*;

// Levenshtein distance
let distance = levenshtein("hannah", "hanna");
assert_eq!(1, distance);

// Damerau Levenshtein distance
let distance = damerau_levenshtein("hannah", "hannha");
assert_eq!(1, distance);

// Hamming distance
let distance = hamming("karolin", "kathrin").unwrap();
assert_eq!(3, distance);

// Sift3 distance
let distance = sift3("hannah", "hanna");
assert_eq!(0.5, distance);