simsearch
A simple and lightweight fuzzy search engine that works in memory, searching for similar strings (a pun here).
Documentation
Usage
Add the following to your Cargo.toml
:
[]
= "0.2"
Example
use SimSearch;
let mut engine: = new;
engine.insert;
engine.insert;
engine.insert;
let results: = engine.search;
assert_eq!;
By default, Jaro-Winkler distance is used. An alternative Levenshtein distance,
which is SIMD-accelerated but only works for ASCII byte strings, can be specified
with custom SearchOptions
:
use ;
let options = new.levenshtein;
let mut engine: = new_with;
Also try the interactive demo by:
$ cargo run --release --example books
Contribution
All kinds of contribution are welcomed.
- Issus. Feel free to open an issue when you find typos, bugs, or have any question.
- Pull requests. New collection, better implementation, more tests, more documents and typo fixes are all welcomed.
License
Licensed under MIT license (LICENSE-MIT or http://opensource.org/licenses/MIT)