Awesome
SwiftyStringScore
SwiftyStringScore (StringScore_Swift) is a Swift library which provides fast fuzzy string matching/scoring. Based on the JavaScript library of the same name, by Joshaven Potter.
Examples
"hello world".score(word: "axl") // ->0.0
"hello world".score(word: "ow") // ->0.354545454545455
"hello world".score(word: "e") // ->0.109090909090909
"hello world".score(word: "h") // ->0.586363636363636
"hello world".score(word: "he") // ->0.622727272727273
"hello world".score(word: "hel") // ->0.659090909090909
"hello world".score(word: "hell") // ->0.695454545454545
"hello world".score(word: "hello") // ->0.731818181818182
"hello world".score(word: "hello worl") // ->0.913636363636364
"hello world".score(word: "hello world") // ->1.0
"hello world".score(word: "hello wor1") // ->0.0
"hello world".score(word: "h") // ->0.586363636363636
"hello world".score(word: "H") // ->0.531818181818182
"hello world".score(word: "HiMi") // ->0.0
"hello world".score(word: "Hills") // ->0.0
"hello world".score(word: "Hillsd") // ->0.0
"He".score(word: "h") // ->0.675
"He".score(word: "H") // ->0.75
"Hello".score(word: "hell") // ->0.8475
"Hello".score(word: "hello") // ->0.93
"Hello".score(word: "hello worl") // ->0.0
"Hello".score(word: "hello world") // ->0.0
"Hello".score(word: "hello wor1") // ->0.0
"hello world".score(word: "hello worl", fuzziness:0.5) // ->0.913636363636364
"hello world".score(word: "hello world", fuzziness:0.5) // ->1.0
"hello world".score(word: "hello wor1", fuzziness:0.5) // ->0.608181818181818
"Hillsdale Michigan".score(word: "HiMi", fuzziness:1.0) // ->0.669444444444444
"Hillsdale Michigan".score(word: "Hills", fuzziness:1.0) // ->0.661111111111111
"Hillsdale Michigan".score(word: "Hillsd", fuzziness:1.0) // ->0.683333333333333
Parameters
Fuzziness
A number between 0 and 1 which varys how fuzzy/ the calculation is.
Defaults to nil
(fuzziness disabled).
License
Licensed under the MIT license.