Function strsim::jaro_against_vec [] [src]

pub fn jaro_against_vec(a: &str, v: &[&str]) -> Vec<f64>

Calculates the Jaro distance between a string and each string in a vector. Returns a vector of corresponding values between 0.0 and 1.0 (higher value means more similar).

use strsim::jaro_against_vec;

let v = vec!["test", "test1", "test12", "test123", "", "tset"];
let result = jaro_against_vec("test", &v);
let expected = vec![1.0, 0.933333, 0.888889, 0.857143, 0.0, 0.916667];
let delta: f64 = result.iter()
                       .zip(expected.iter())
                       .map(|(x, y)| (x - y).abs() as f64)
                       .fold(0.0, |x, y| x + y as f64);
assert!(delta.abs() < 0.0001);