strsim是golang实现的字符串相识度库,后端集成多种算法,主要解决现有相似度库不能很好的处理中文
go get -u github.com/antlabs/strsim- 可以忽略空白字符
- 可以大小写
- 莱文斯坦-编辑距离(Levenshtein)
- Hamming
- Dice's coefficient
- Jaro
- JaroWinkler
- Cosine
- Simhash
strsim.Compare("中国人", "中")
// -> 0.333333strsim.FindBestMatchOne("海刘", []string{"白日依山尽", "黄河入海流", "欲穷千里目", "更上一层楼"})strsim.FindBestMatch("海刘", []string{"白日依山尽", "黄河入海流", "欲穷千里目", "更上一层楼"})strsim.Compare("abc", "ab")
// -> 0.6666666666666667strsim.Compare("abc", "ab", strsim.DiceCoefficient())
//-> 0.6666666666666666strsim.Compare("abc", "ab", strsim.Jaro())strsim.Compare("abc", "ab", strsim.JaroWinkler())strsim.Compare("abc", "ab", strsim.Hamming())strsim.Compare("abc", "ab", strsim.Cosine())strsim.Compare("abc", "ab", strsim.Simhash())