Skip to main content

a library for doing approximate and phonetic matching of strings.

Project description

https://github.com/jamesturk/jellyfish/workflows/Python%20package/badge.svg https://coveralls.io/repos/jamesturk/jellyfish/badge.png?branch=master https://img.shields.io/pypi/v/jellyfish.svg Documentation Status

Jellyfish is a python library for doing approximate and phonetic matching of strings.

Written by James Turk <dev@jamesturk.net> and Michael Stephens.

See https://github.com/jamesturk/jellyfish/graphs/contributors for contributors.

See http://jellyfish.readthedocs.io for documentation.

Source is available at http://github.com/jamesturk/jellyfish.

Jellyfish >= 0.7 only supports Python 3, if you need Python 2 please use 0.6.x.

Included Algorithms

String comparison:

  • Levenshtein Distance

  • Damerau-Levenshtein Distance

  • Jaro Distance

  • Jaro-Winkler Distance

  • Match Rating Approach Comparison

  • Hamming Distance

Phonetic encoding:

  • American Soundex

  • Metaphone

  • NYSIIS (New York State Identification and Intelligence System)

  • Match Rating Codex

Example Usage

>>> import jellyfish
>>> jellyfish.levenshtein_distance(u'jellyfish', u'smellyfish')
2
>>> jellyfish.jaro_distance(u'jellyfish', u'smellyfish')
0.89629629629629637
>>> jellyfish.damerau_levenshtein_distance(u'jellyfish', u'jellyfihs')
1
>>> jellyfish.metaphone(u'Jellyfish')
'JLFX'
>>> jellyfish.soundex(u'Jellyfish')
'J412'
>>> jellyfish.nysiis(u'Jellyfish')
'JALYF'
>>> jellyfish.match_rating_codex(u'Jellyfish')
'JLLFSH'

Running Tests

If you are interested in contributing to Jellyfish, you may want to run tests locally. Jellyfish uses tox to run tests, which you can setup and run as follows:

pip install tox
# cd jellyfish/
tox

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

jellyfish-0.8.8.tar.gz (134.5 kB view details)

Uploaded Source

Built Distributions

jellyfish-0.8.8-cp39-cp39-win_amd64.whl (28.1 kB view details)

Uploaded CPython 3.9 Windows x86-64

jellyfish-0.8.8-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (72.1 kB view details)

Uploaded CPython 3.9 manylinux: glibc 2.17+ ARM64

jellyfish-0.8.8-cp39-cp39-macosx_10_14_x86_64.whl (24.6 kB view details)

Uploaded CPython 3.9 macOS 10.14+ x86-64

jellyfish-0.8.8-cp38-cp38-win_amd64.whl (28.1 kB view details)

Uploaded CPython 3.8 Windows x86-64

jellyfish-0.8.8-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (72.8 kB view details)

Uploaded CPython 3.8 manylinux: glibc 2.17+ ARM64

jellyfish-0.8.8-cp38-cp38-macosx_10_14_x86_64.whl (24.6 kB view details)

Uploaded CPython 3.8 macOS 10.14+ x86-64

jellyfish-0.8.8-cp37-cp37m-win_amd64.whl (28.1 kB view details)

Uploaded CPython 3.7m Windows x86-64

jellyfish-0.8.8-cp37-cp37m-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (72.4 kB view details)

Uploaded CPython 3.7m manylinux: glibc 2.17+ ARM64

jellyfish-0.8.8-cp37-cp37m-macosx_10_14_x86_64.whl (24.5 kB view details)

Uploaded CPython 3.7m macOS 10.14+ x86-64

jellyfish-0.8.8-cp36-cp36m-win_amd64.whl (28.1 kB view details)

Uploaded CPython 3.6m Windows x86-64

jellyfish-0.8.8-cp36-cp36m-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (72.3 kB view details)

Uploaded CPython 3.6m manylinux: glibc 2.17+ ARM64

jellyfish-0.8.8-cp36-cp36m-macosx_10_14_x86_64.whl (24.5 kB view details)

Uploaded CPython 3.6m macOS 10.14+ x86-64

File details

Details for the file jellyfish-0.8.8.tar.gz.

File metadata

  • Download URL: jellyfish-0.8.8.tar.gz
  • Upload date:
  • Size: 134.5 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.4.2 importlib_metadata/4.6.4 pkginfo/1.7.1 requests/2.26.0 requests-toolbelt/0.9.1 tqdm/4.62.1 CPython/3.8.11

File hashes

Hashes for jellyfish-0.8.8.tar.gz
Algorithm Hash digest
SHA256 0506089cacf9b5897442134417b04b3c6610c19f280ae535eace390dc6325a5c
MD5 188b74439b61e97fd43cbf9119ac3756
BLAKE2b-256 7688e6eba0ebd8a11eb0a03392d827f0a605ad45fbb24234f7db98ca1ecb41b2

See more details on using hashes here.

File details

Details for the file jellyfish-0.8.8-cp39-cp39-win_amd64.whl.

File metadata

  • Download URL: jellyfish-0.8.8-cp39-cp39-win_amd64.whl
  • Upload date:
  • Size: 28.1 kB
  • Tags: CPython 3.9, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.4.2 importlib_metadata/4.6.4 pkginfo/1.7.1 requests/2.26.0 requests-toolbelt/0.9.1 tqdm/4.62.1 CPython/3.8.11

File hashes

Hashes for jellyfish-0.8.8-cp39-cp39-win_amd64.whl
Algorithm Hash digest
SHA256 a8597e05559078ff3790ad44fd4697c5dc55ab7a2a7a98c751176ced5903d6ba
MD5 46083e0ccd311360c90184bd5a28437b
BLAKE2b-256 237d4d02fd3cf85d5569d20bb06aef3ca4ad7f1f95ca0ec5dcca344bda0f6b03

See more details on using hashes here.

File details

Details for the file jellyfish-0.8.8-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for jellyfish-0.8.8-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 63d8c61d0b74c74dea2daf2813776a316bc8d006902a7c13548c2ec274f96a54
MD5 e9e668536129c74406eab9b15e2437df
BLAKE2b-256 ace7b1f15de17a8a4b78100ed608af122e21aa5d130d140eb83d1affdf3a22e0

See more details on using hashes here.

File details

Details for the file jellyfish-0.8.8-cp39-cp39-macosx_10_14_x86_64.whl.

File metadata

  • Download URL: jellyfish-0.8.8-cp39-cp39-macosx_10_14_x86_64.whl
  • Upload date:
  • Size: 24.6 kB
  • Tags: CPython 3.9, macOS 10.14+ x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.4.2 importlib_metadata/4.6.4 pkginfo/1.7.1 requests/2.26.0 requests-toolbelt/0.9.1 tqdm/4.62.1 CPython/3.8.11

File hashes

Hashes for jellyfish-0.8.8-cp39-cp39-macosx_10_14_x86_64.whl
Algorithm Hash digest
SHA256 e5e3138ea47c5d585158df5fc0a4311548ff556a9c67ccfc2d7b981b1d064b26
MD5 0e597c0fcdd1c3aa8ba8a9c090c11497
BLAKE2b-256 26e469f206d3a952cf191aa77179ac864e4ee59228092d642026e08272a39f4d

See more details on using hashes here.

File details

Details for the file jellyfish-0.8.8-cp38-cp38-win_amd64.whl.

File metadata

  • Download URL: jellyfish-0.8.8-cp38-cp38-win_amd64.whl
  • Upload date:
  • Size: 28.1 kB
  • Tags: CPython 3.8, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.4.2 importlib_metadata/4.6.4 pkginfo/1.7.1 requests/2.26.0 requests-toolbelt/0.9.1 tqdm/4.62.1 CPython/3.8.11

File hashes

Hashes for jellyfish-0.8.8-cp38-cp38-win_amd64.whl
Algorithm Hash digest
SHA256 ddfb50b15cebbf6c660f3d2425980c422caafc139b30e797ad754b50e9ec7b2f
MD5 174ba4f2c9569ba06c7106bca3b51340
BLAKE2b-256 414bc2ef08d228d57a70b2664c8dc774affe46ef010232a2271f62b7e83e6a5d

See more details on using hashes here.

File details

Details for the file jellyfish-0.8.8-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for jellyfish-0.8.8-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 eef478362c03ba11e46c63747a44bdbac1cbf0f2cb2e0ab3b34efcc68f563644
MD5 0d9f75695c15936ab4887de30fc973fe
BLAKE2b-256 f830207e539d3ae8e0718f77e788c7c83649ab8981eb5bac7fc669dac32cc520

See more details on using hashes here.

File details

Details for the file jellyfish-0.8.8-cp38-cp38-macosx_10_14_x86_64.whl.

File metadata

  • Download URL: jellyfish-0.8.8-cp38-cp38-macosx_10_14_x86_64.whl
  • Upload date:
  • Size: 24.6 kB
  • Tags: CPython 3.8, macOS 10.14+ x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.4.2 importlib_metadata/4.6.4 pkginfo/1.7.1 requests/2.26.0 requests-toolbelt/0.9.1 tqdm/4.62.1 CPython/3.8.11

File hashes

Hashes for jellyfish-0.8.8-cp38-cp38-macosx_10_14_x86_64.whl
Algorithm Hash digest
SHA256 10008dcc8cc0881e7f0709d952205905dcd0aabaf5e24af915bdd6a4f5407944
MD5 9fb648b86b0e94c50b8756191936dbb8
BLAKE2b-256 a37d56212af3b38cd64b05e4213b48ee705779e62c339c88ba6ee42614b5c160

See more details on using hashes here.

File details

Details for the file jellyfish-0.8.8-cp37-cp37m-win_amd64.whl.

File metadata

  • Download URL: jellyfish-0.8.8-cp37-cp37m-win_amd64.whl
  • Upload date:
  • Size: 28.1 kB
  • Tags: CPython 3.7m, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.4.2 importlib_metadata/4.6.4 pkginfo/1.7.1 requests/2.26.0 requests-toolbelt/0.9.1 tqdm/4.62.1 CPython/3.8.11

File hashes

Hashes for jellyfish-0.8.8-cp37-cp37m-win_amd64.whl
Algorithm Hash digest
SHA256 bede82c2a7879d53ac0fadf6871adee07476f62812096618a63a490b3dddfb40
MD5 ac24d84e1ade6492d97fc7b5adc9b2ae
BLAKE2b-256 6a95498d1cc2a855e87ee9de2b7f25eabe5204b268ef0654cedfffdbe41ab1d7

See more details on using hashes here.

File details

Details for the file jellyfish-0.8.8-cp37-cp37m-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for jellyfish-0.8.8-cp37-cp37m-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 18895debc063f9f46b2739d849305aba94614be0b9ca347ea3f91e4ea5ef2217
MD5 4c65c47d14d944a3eec9709cb1fd2ed7
BLAKE2b-256 ad118ded767b079224a23ac230362dc5029ebcdf578cbe188d5c73b45abd5ddb

See more details on using hashes here.

File details

Details for the file jellyfish-0.8.8-cp37-cp37m-macosx_10_14_x86_64.whl.

File metadata

  • Download URL: jellyfish-0.8.8-cp37-cp37m-macosx_10_14_x86_64.whl
  • Upload date:
  • Size: 24.5 kB
  • Tags: CPython 3.7m, macOS 10.14+ x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.4.2 importlib_metadata/4.6.4 pkginfo/1.7.1 requests/2.26.0 requests-toolbelt/0.9.1 tqdm/4.62.1 CPython/3.8.11

File hashes

Hashes for jellyfish-0.8.8-cp37-cp37m-macosx_10_14_x86_64.whl
Algorithm Hash digest
SHA256 7e910e891defba7ad73379d5d678b776983d9851991c136f1f01bfd896d6b03b
MD5 6ba00063d0457e659a4734a21df6adbe
BLAKE2b-256 f8dce7d9945c0448e3e70fc0ad10067d293b13efc52e2b8e73028b5684458dd4

See more details on using hashes here.

File details

Details for the file jellyfish-0.8.8-cp36-cp36m-win_amd64.whl.

File metadata

  • Download URL: jellyfish-0.8.8-cp36-cp36m-win_amd64.whl
  • Upload date:
  • Size: 28.1 kB
  • Tags: CPython 3.6m, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.4.2 importlib_metadata/4.6.4 pkginfo/1.7.1 requests/2.26.0 requests-toolbelt/0.9.1 tqdm/4.62.1 CPython/3.8.11

File hashes

Hashes for jellyfish-0.8.8-cp36-cp36m-win_amd64.whl
Algorithm Hash digest
SHA256 2a390319d74d3e4f9c76b78ac90574ba546093d44e053d289d017a470eda8c6f
MD5 41398515fad41e31ef426b27836a4ae9
BLAKE2b-256 9be15b67c4037aea5ee3c3127a4da209790a74d3973365c080aea1ead17031c9

See more details on using hashes here.

File details

Details for the file jellyfish-0.8.8-cp36-cp36m-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for jellyfish-0.8.8-cp36-cp36m-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 ebbb99b7ff7ce2d8fb2d93e6e3a8573a5d2f5ab91f9fea32d0ef5b41d9fd4e00
MD5 a58c7f0fd1238d0585def81d88561c45
BLAKE2b-256 75776f018a45001a747e62737da5b1b10797372d1bb425f0bf25ea339bcb126e

See more details on using hashes here.

File details

Details for the file jellyfish-0.8.8-cp36-cp36m-macosx_10_14_x86_64.whl.

File metadata

  • Download URL: jellyfish-0.8.8-cp36-cp36m-macosx_10_14_x86_64.whl
  • Upload date:
  • Size: 24.5 kB
  • Tags: CPython 3.6m, macOS 10.14+ x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.4.2 importlib_metadata/4.6.4 pkginfo/1.7.1 requests/2.26.0 requests-toolbelt/0.9.1 tqdm/4.62.1 CPython/3.8.11

File hashes

Hashes for jellyfish-0.8.8-cp36-cp36m-macosx_10_14_x86_64.whl
Algorithm Hash digest
SHA256 0cec0236be371faa2aa711561d4a564ffcc4804624a25d9efd012eeb2f5aa676
MD5 b89d50142440b85e397198d0a5704b90
BLAKE2b-256 1e18887d4fc9884433ff996d48b978b28ca8008dfe7bd8582d43af5ec0b24915

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page