Golang string comparison and edit distance algorithms library featuring : Levenshtein, LCS, Hamming, Damerau levenshtein (OSA and Adjacent transpositions algorithms), Jaro-Winkler, etc...
- Go (v1.13+)
Golang open-source library which includes most (and soon all) edit-distance and string comparision algorithms with some extra!
Designed to be fully compatible with Unicode characters!
This library is 100% test covered π
-
Levenshtein β¨
-
LCS (Longest common subsequence) with edit distance, backtrack and diff functions β¨
-
Hamming β¨
-
Damerau-Levenshtein, with following variants :
- OSA (Optimal string alignment) β¨
- Adjacent transpositions β¨
-
Jaro & Jaro-Winkler similarity algorithms β¨
-
Computed similarity percentage functions based on all available edit distance algorithms in this lib β¨
-
Fuzzy search functions based on edit distance with unique or multiples strings output β¨
-
Unicode compatibility ! π₯³
-
Many more to come !
Open bash into you project folder and run :
go get github.com/hbollon/go-edlib
And import it into your project.
If you want to run all units tests just run :
go test ./... -coverpkg=./... # Add desired parameters to this command if you want
You can find all the documentation here : Documentation
π€ Hugo Bollon
- Github: @hbollon
- LinkedIn: @Hugo Bollon
- Portfolio: hugobollon.me
Contributions, issues and feature requests are welcome!
Feel free to check issues page.
Give a βοΈ if this project helped you!
Copyright Β© 2020 Hugo Bollon.
This project is MIT License licensed.