Skip to content
@rapidfuzz

RapidFuzz

fuzzy string matching libraries for various programming languages

RapidFuzz provides libraries for fuzzy string matching in various programming languages.

Python

For Python there are the following libraries:

  • RapidFuzz provides various string metrics with a focus on making them as fast as possible.
  • Levenshtein provides a couple string metrics and median implementations. For string metrics generally rapidfuzz should be te preferred choice. Opposed to all other libraries this library is currently GPLv2 licensed.
  • python-Levenshtein this is an alias to the Levenshtein library that only exists for backwards compatibility reasons.
  • JaroWinkler provides a fast implementation of Jaro and JaroWinkler similarity. This was placed in RapidFuzz at some point and so this largely exists for applications already using it.
  • CyDifflib drop in replacement for difflib in the Python standard library which is faster.

C++

For C++ there are the following libraries:

  • rapidfuzz-cpp provides various string metrics with a focus on making them as fast as possible. This should be used when the performance of the algorithms is more important than a slightly larger binary.

Similar to rust there will be an implementation focussing on binary size in the future.

Rust

For rust there are the following libraries:

  • rapidfuzz-rs provides various string metrics with a focus on making them as fast as possible. This should be used when the performance of the algorithms is more important than a slightly larger binary.
  • strsim-rs provides a lot of string metrics of rapidfuzz, but has a focus on keeping the binary size as small as possible. This should be used when performance of the algorithms doesn't really matter too much, since the application only compares a small set of strings. An example for this would be suggestions in a CLI.

Pinned

  1. RapidFuzz RapidFuzz Public

    Rapid fuzzy string matching in Python using various string metrics

    C++ 2.4k 108

  2. Levenshtein Levenshtein Public

    The Levenshtein Python C extension module contains functions for fast computation of Levenshtein distance and string similarity

    C++ 229 14

  3. rapidfuzz-cpp rapidfuzz-cpp Public

    Rapid fuzzy string matching in C++ using the Levenshtein Distance

    C++ 213 35

  4. rapidfuzz-rs rapidfuzz-rs Public

    Rapid fuzzy string matching in Rust using various string metrics

    Rust 30 1

  5. strsim-rs strsim-rs Public

    🔤 Rust implementations of string similarity metrics

    Rust 380 39

Repositories

Showing 10 of 13 repositories

Most used topics

Loading…