Skip to content

New String Matching Algorithms

Choose a tag to compare

@David-Maisonave David-Maisonave released this 17 Aug 07:04
· 147 commits to main since this release

0.1.3

  • Added NGramsDistance
  • Resorted enums in order of types (Edit Distance, Sequence Alignment, Token Based, and Hybrid Algorithms)
  • Made SqliteFuzzyPlusExtension C language compatible. Changed the main header file and added extern "C" to all the C compatible functions.
  • Added C language project (UnitTestConsole_C_Runner) for test purposes.
  • Updated enum's in SqliteFuzzyPlusExtension.h with the enum's in Fuzzy.cs.
  • Added phonetic methods MatchRatingApproach, Metaphone, CaverPhonePhonix, and DoubleMetaphone from Phonix project.
  • Added phonetic method ColognePhonetics.
  • Created the following export functions so that the fuzzy code can be used outside of SQLite:
    • fuzzy_script, SameName, HasCharInSameOrder, DamerauLevenshteinDistance, DamerauLevenshtein, LevenshteinDistance, Levenshtein, HammingDistance, Hamming, JaccardDistance, JaroDistance,
    • JaroWinklerDistance, Levenshtein2Distance, LongestCommonSubsequenceDistance, LongestCommonSubstringDistance, NormalizedLevenshteinDistance, OverlapCoefficientDistance, RatcliffObershelpSimilarityDistance,
    • SorensenDiceDistance, TanimotoCoefficientDistance, BlockDistance, NeedlemanWunsch, JaccardIndex, ChapmanLengthDeviation, ChapmanMeanLength, EuclideanDistance, MatchingCoefficient, MongeElkan, QGramsDistance,
    • SmithWaterman, SmithWatermanGotoh, SmithWatermanGotohWindowedAffine, CosineSimilarity, JaccardSimilarity, LongestCommonSequence, DiceSimilarity, PhraseTokenize, SimplePhraseTokenize