Skip to main content

A library to match and compare strings.

Project description

stringmatch

PyPI PyPI - Python Version Downloads Build Documentation Status codecov Code style: black

stringmatch is a small, lightweight string matching library written in Python, based on the Levenshtein distance.
Inspired by libraries like seatgeek/thefuzz, which did not quite fit my needs. And so I am building this library for myself, primarily.

Disclaimer: This library is still in an alpha development phase! Changes may be frequent and breaking changes can occur! It is recommended to update frequently to minimise bugs and maximise features.

Table of Contents

Key Features

This library matches compares and strings to each other based mainly on, among others, the Levenshtein distance.
What makes stringmatch special compared to other libraries with similar functions:

  • 💨 Lightweight, straightforward and easy to use
  • ⚡ High speed - at least ~12x faster than thefuzz and up to 70x
  • 🧰 Allows for highly customisable searches, that yield better results
  • 📚 Lots of utility functions to make your life easier
  • 📝 Statically typed with mypy, compiled with mypyc
  • 🌍 Handles special unicode characters, like emojis or characters from other languages, like ジャパニーズ

Requirements

  • Python 3.9 or later.
  • The packages in requirements.txt, pip will handle these for you.

Installation

Install the latest stable version with pip:

pip install -U stringmatch

Or install the newest version via git (Might be unstable or unfinished):

pip install -U git+https://github.com/atomflunder/stringmatch

Basic Usage

Below are some basic examples on how to use this library.
For a more detailed explanation head over to the Documentation.
For examples on how to use this library, head over to the examples directory.

Matching

The match functions allow you to compare 2 strings and check if they are "similar enough" to each other, or get the best match(es) from a list of strings:

from stringmatch import Match

match = Match()

# Checks if the strings are similar:
match.match("stringmatch", "strngmach")         # returns True
match.match("stringmatch", "something else")    # returns False

# Returns the best match(es) found in the list:
searches = ["stringmat", "strinma", "strings", "mtch", "whatever", "s"]
match.get_best_match("stringmatch", searches)   # returns "stringmat"
match.get_best_matches("stringmatch", searches) # returns ["stringmat", "strinma"]

Ratios

The "ratio of similarity" describes how similar the strings are to each other. It ranges from 100 being an exact match to 0 being something completely different.
You can get the ratio between strings like this:

from stringmatch import Ratio

ratio = Ratio()

# Getting the ratio between the two strings:
ratio.ratio("stringmatch", "stringmatch")           # returns 100
ratio.ratio("stringmatch", "strngmach")             # returns 90
ratio.ratio("stringmatch", "eh")                    # returns 15

# Getting the ratio between the first string and the list of strings at once:
searches = ["stringmatch", "strngmach", "eh"]
ratio.ratio_list("stringmatch", searches)           # returns [100, 90, 15]

# Searching for partial ratios with substrings:
ratio.partial_ratio("a string", "a string longer")  # returns 80

Matching & Ratios

You can also get both the match and the ratio together in a tuple using these functions:

from stringmatch import Match

match = Match()

match.match_with_ratio("stringmatch", "strngmach")    # returns (True, 90)

searches = ["test", "nope", "tset"]
match.get_best_match_with_ratio("test", searches)     # returns ("test", 100)
match.get_best_matches_with_ratio("test", searches)   # returns [("test", 100), ("tset", 75)]

Distances

Instead of the ratio, you can also get the Levenshtein distance between strings directly. The bigger the distance, the more different the strings:

from stringmatch import Distance

distance = Distance()

distance.distance("kitten", "sitting")      # returns 3

searches = ["sitting", "kitten"]
distance.distance_list("kitten", searches)  # returns [3, 0]

Strings

This is primarily meant for internal usage, but you can also use this library to modify strings:

from stringmatch import Strings

strings = Strings()

strings.latinise("Héllö, world!")               # returns "Hello, world!"
strings.remove_punctuation("wh'at;, ever")      # returns "what ever"
strings.alphanumeric("Héllö, world!")           # returns "Hll world"
strings.ignore_case("test test!", lower=False)  # returns "TEST TEST!"

Advanced Usage

Keyword Arguments

There are some optional arguments available for a few functions.

score

Type Default Description Available for:
Integer 70 The score cutoff for matching. If the score is below the threshold it will not get returned. All functions from the Match() class.
# Example:

from stringmatch import Match

match = Match()

match.match("stringmatch", "strngmach", score=95)    # returns False
match.match("stringmatch", "strngmach", score=70)    # returns True

limit

Type Default Description Available for:
Integer 5 The limit of how many matches to return. If you want to return every match set this to 0 or None. get_best_matches(), get_best_matches_with_ratio()
# Example:

from stringmatch import Match

match = Match()

searches = ["limit 5", "limit 4", "limit 3", "limit 2", "limit 1", "limit 0", "something else"]

# returns ["limit 5", "limit 4"]
match.get_best_matches("limit 5", searches, limit=2)

# returns ["limit 5"]
match.get_best_matches("limit 5", searches, limit=1)

# returns ["limit 5", "limit 4", "limit 3", "limit 2", "limit 1", "limit 0"]
match.get_best_matches("limit 5", searches, limit=None) 

Class Keyword Arguments

You can also pass in on or more of these optional arguments when initialising the Match() and Ratio() classes to customize your search even further.
Of course you can use multiple of these keyword arguments at once, to customise the search to do exactly what you intend to do.

scorer

Type Default Description
BaseScorer LevenshteinScorer Different scoring algorithms to use. The available options are: LevenshteinScorer, JaroScorer, JaroWinklerScorer.

Click on the links above for detailed information about these, but speaking generally the Jaro Scorer will be the fastest, focussing on the characters the strings have in common.
The Jaro-Winkler Scorer slightly modified the Jaro Scorer to prioritise characters at the start of the string.
The Levenshtein Scorer will, most likely, produce the best results, focussing on the number of edits needed to get from one string to the other.

# Example:

from stringmatch import Match, LevenshteinScorer, JaroWinklerScorer

lev_matcher = Match(scorer=LevenshteinScorer)
lev_matcher.match_with_ratio("test", "th test") # returns (True, 73)

jw_matcher = Match(scorer=JaroWinklerScorer)
jw_matcher.match_with_ratio("test", "th test")  # returns (False, 60)

latinise

Type Default Description
Boolean False Replaces special unicode characters with their latin alphabet equivalents. Examples: Ǽ -> AE, ノース -> nosu
# Example:

from stringmatch import Match

lat_match = Match(latinise=True)
lat_match.match("séärçh", "search") # returns True

def_match = Match(latinise=False)
def_match.match("séärçh", "search") # returns False

ignore_case

Type Default Description
Boolean True If you want to ignore case sensitivity while searching.
# Example:

from stringmatch import Match

def_match = Match(ignore_case=True)
def_match.match("test", "TEST")   # returns True

case_match = Match(ignore_case=False)
case_match.match("test", "TEST")  # returns False

remove_punctuation

Type Default Description
Boolean False Removes commonly used punctuation symbols from the strings, like .,;:!? and so on.
# Example:

from stringmatch import Match

punc_match = Match(remove_punctuation=True)
punc_match.match("test,---....", "test")  # returns True

def_match = Match(remove_punctuation=False)
def_match.match("test,---....", "test")   # returns False

alphanumeric

Type Default Description
Boolean False Removes every character that is not a number or in the latin alphabet, a more extreme version of remove_punctuation.
# Example:

from stringmatch import Match

let_match = Match(alphanumeric=True)
let_match.match("»»ᅳtestᅳ►", "test")  # returns True

def_match = Match(alphanumeric=False)
def_match.match("»»ᅳtestᅳ►", "test")  # returns False

include_partial

Type Default Description
Boolean False If set to true, also searches for partial substring matches. This may lead to more desirable results but is a bit slower. This will return a score of 65-95 depending on how far apart the sizes of the strings are to ensure only identical matches provide a score of 100. It will start matching at a length of 2, or 1 if it is the first letter of the string.
# Example:

from stringmatch import Match

part_match = Match(include_partial=True)
# returns (True, 65)
part_match.match_with_ratio("A string", "A string thats like really really long", score=60)

def_match = Match(include_partial=False)
# returns (False, 35)
def_match.match_with_ratio("A string", "A string thats like really really long", score=60)

Your Own Scorer

If you are unhappy with the scoring algorithms provided, you can of course construct your own scorer class. Make sure it inherits from BaseScorer and has a score() method that takes 2 strings and returns a float between 0 and 100.

# Example:

from stringmatch import BaseScorer, Match

class MyOwnScorer(BaseScorer):
    def score(self, string1: str, string2: str) -> float:
        # Highly advanced technology
        return 100

my_matcher = Match(scorer=MyOwnScorer)
my_matcher.match_with_ratio("anything", "whatever") # returns (True, 100)

Contributing

Contributions to this library are always appreciated! If you have any sort of feedback, or are interested in contributing, head on over to the Contributing Guidelines.
Additionally, if you like this library, leaving a star and spreading the word would be appreciated a lot!
Thanks in advance for taking the time to do so.

Links

Packages used:

License

This project is licensed under the MIT License.

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

stringmatch-0.14.4.tar.gz (18.3 kB view details)

Uploaded Source

Built Distributions

stringmatch-0.14.4-cp312-cp312-win_amd64.whl (84.6 kB view details)

Uploaded CPython 3.12 Windows x86-64

stringmatch-0.14.4-cp312-cp312-win32.whl (77.3 kB view details)

Uploaded CPython 3.12 Windows x86

stringmatch-0.14.4-cp312-cp312-musllinux_1_1_x86_64.whl (171.9 kB view details)

Uploaded CPython 3.12 musllinux: musl 1.1+ x86-64

stringmatch-0.14.4-cp312-cp312-musllinux_1_1_i686.whl (175.9 kB view details)

Uploaded CPython 3.12 musllinux: musl 1.1+ i686

stringmatch-0.14.4-cp312-cp312-musllinux_1_1_aarch64.whl (170.2 kB view details)

Uploaded CPython 3.12 musllinux: musl 1.1+ ARM64

stringmatch-0.14.4-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (176.8 kB view details)

Uploaded CPython 3.12 manylinux: glibc 2.17+ x86-64

stringmatch-0.14.4-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (174.9 kB view details)

Uploaded CPython 3.12 manylinux: glibc 2.17+ ARM64

stringmatch-0.14.4-cp312-cp312-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl (181.0 kB view details)

Uploaded CPython 3.12 manylinux: glibc 2.17+ i686 manylinux: glibc 2.5+ i686

stringmatch-0.14.4-cp312-cp312-macosx_10_9_x86_64.whl (97.2 kB view details)

Uploaded CPython 3.12 macOS 10.9+ x86-64

stringmatch-0.14.4-cp311-cp311-win_amd64.whl (84.3 kB view details)

Uploaded CPython 3.11 Windows x86-64

stringmatch-0.14.4-cp311-cp311-win32.whl (76.4 kB view details)

Uploaded CPython 3.11 Windows x86

stringmatch-0.14.4-cp311-cp311-musllinux_1_1_x86_64.whl (167.6 kB view details)

Uploaded CPython 3.11 musllinux: musl 1.1+ x86-64

stringmatch-0.14.4-cp311-cp311-musllinux_1_1_i686.whl (169.0 kB view details)

Uploaded CPython 3.11 musllinux: musl 1.1+ i686

stringmatch-0.14.4-cp311-cp311-musllinux_1_1_aarch64.whl (166.8 kB view details)

Uploaded CPython 3.11 musllinux: musl 1.1+ ARM64

stringmatch-0.14.4-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (172.9 kB view details)

Uploaded CPython 3.11 manylinux: glibc 2.17+ x86-64

stringmatch-0.14.4-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (171.8 kB view details)

Uploaded CPython 3.11 manylinux: glibc 2.17+ ARM64

stringmatch-0.14.4-cp311-cp311-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl (173.9 kB view details)

Uploaded CPython 3.11 manylinux: glibc 2.17+ i686 manylinux: glibc 2.5+ i686

stringmatch-0.14.4-cp311-cp311-macosx_10_9_x86_64.whl (96.3 kB view details)

Uploaded CPython 3.11 macOS 10.9+ x86-64

stringmatch-0.14.4-cp310-cp310-win_amd64.whl (84.6 kB view details)

Uploaded CPython 3.10 Windows x86-64

stringmatch-0.14.4-cp310-cp310-win32.whl (76.6 kB view details)

Uploaded CPython 3.10 Windows x86

stringmatch-0.14.4-cp310-cp310-musllinux_1_1_x86_64.whl (167.3 kB view details)

Uploaded CPython 3.10 musllinux: musl 1.1+ x86-64

stringmatch-0.14.4-cp310-cp310-musllinux_1_1_i686.whl (169.7 kB view details)

Uploaded CPython 3.10 musllinux: musl 1.1+ i686

stringmatch-0.14.4-cp310-cp310-musllinux_1_1_aarch64.whl (166.7 kB view details)

Uploaded CPython 3.10 musllinux: musl 1.1+ ARM64

stringmatch-0.14.4-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (172.3 kB view details)

Uploaded CPython 3.10 manylinux: glibc 2.17+ x86-64

stringmatch-0.14.4-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (171.6 kB view details)

Uploaded CPython 3.10 manylinux: glibc 2.17+ ARM64

stringmatch-0.14.4-cp310-cp310-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl (174.2 kB view details)

Uploaded CPython 3.10 manylinux: glibc 2.17+ i686 manylinux: glibc 2.5+ i686

stringmatch-0.14.4-cp310-cp310-macosx_10_9_x86_64.whl (97.1 kB view details)

Uploaded CPython 3.10 macOS 10.9+ x86-64

stringmatch-0.14.4-cp39-cp39-win_amd64.whl (84.5 kB view details)

Uploaded CPython 3.9 Windows x86-64

stringmatch-0.14.4-cp39-cp39-win32.whl (76.7 kB view details)

Uploaded CPython 3.9 Windows x86

stringmatch-0.14.4-cp39-cp39-musllinux_1_1_x86_64.whl (166.8 kB view details)

Uploaded CPython 3.9 musllinux: musl 1.1+ x86-64

stringmatch-0.14.4-cp39-cp39-musllinux_1_1_i686.whl (169.3 kB view details)

Uploaded CPython 3.9 musllinux: musl 1.1+ i686

stringmatch-0.14.4-cp39-cp39-musllinux_1_1_aarch64.whl (166.2 kB view details)

Uploaded CPython 3.9 musllinux: musl 1.1+ ARM64

stringmatch-0.14.4-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (171.8 kB view details)

Uploaded CPython 3.9 manylinux: glibc 2.17+ x86-64

stringmatch-0.14.4-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (171.2 kB view details)

Uploaded CPython 3.9 manylinux: glibc 2.17+ ARM64

stringmatch-0.14.4-cp39-cp39-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl (173.8 kB view details)

Uploaded CPython 3.9 manylinux: glibc 2.17+ i686 manylinux: glibc 2.5+ i686

stringmatch-0.14.4-cp39-cp39-macosx_10_9_x86_64.whl (97.1 kB view details)

Uploaded CPython 3.9 macOS 10.9+ x86-64

File details

Details for the file stringmatch-0.14.4.tar.gz.

File metadata

  • Download URL: stringmatch-0.14.4.tar.gz
  • Upload date:
  • Size: 18.3 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.1.1 CPython/3.12.6

File hashes

Hashes for stringmatch-0.14.4.tar.gz
Algorithm Hash digest
SHA256 dab6b1f3f523d24adfbcf7c3942122df1ce4f30b46c1ecde83d787669058b039
MD5 4d58dd69c6f183eeae8b079271a04c0e
BLAKE2b-256 bd2cee3602008970f64a472d45128b31c937a1566b776871fd16f746d5bfade2

See more details on using hashes here.

File details

Details for the file stringmatch-0.14.4-cp312-cp312-win_amd64.whl.

File metadata

File hashes

Hashes for stringmatch-0.14.4-cp312-cp312-win_amd64.whl
Algorithm Hash digest
SHA256 920d9c869fcf9cfc63a36fcfc05983bf061290c17193a069c3a0fba10d20561d
MD5 6c082cb9c67ab3beef33bfaa4ca166e2
BLAKE2b-256 237dd8ddefb9db9b3e62794520d46ab651bbac972ab82ffcb27d9e3cc28e7d90

See more details on using hashes here.

File details

Details for the file stringmatch-0.14.4-cp312-cp312-win32.whl.

File metadata

File hashes

Hashes for stringmatch-0.14.4-cp312-cp312-win32.whl
Algorithm Hash digest
SHA256 9e2cf2846a933f2ad16d4e453f3f23340bf3dd2fa3f907176cf90496787a2c30
MD5 f525bf5e31b6f94e2ade9ae8f3917aaa
BLAKE2b-256 d681dd391fb5aa3d8838b38c98852f0401b6f47b8e7e6c765931fe40ba4f7670

See more details on using hashes here.

File details

Details for the file stringmatch-0.14.4-cp312-cp312-musllinux_1_1_x86_64.whl.

File metadata

File hashes

Hashes for stringmatch-0.14.4-cp312-cp312-musllinux_1_1_x86_64.whl
Algorithm Hash digest
SHA256 c38a1354a7b848228eb45a6978b11fee0233db1a9373cb465fce8c136e4a4c46
MD5 9e073020974f23adc10dc0bed753cf09
BLAKE2b-256 27b4bbd5f0a39231659c1da6dcc09a7041f4438818b849268d6119407b4f5a19

See more details on using hashes here.

File details

Details for the file stringmatch-0.14.4-cp312-cp312-musllinux_1_1_i686.whl.

File metadata

File hashes

Hashes for stringmatch-0.14.4-cp312-cp312-musllinux_1_1_i686.whl
Algorithm Hash digest
SHA256 f649db1623eb8e9e350fa462baf7105f54251d1e08f15a1e7f031bff1f70c3b6
MD5 738d87c6b39cdc41deccfd22acec2974
BLAKE2b-256 cc490fb08e8c106bce7219010a9f5f62ce99da4788af8ea6f07f2a9ea508ffe8

See more details on using hashes here.

File details

Details for the file stringmatch-0.14.4-cp312-cp312-musllinux_1_1_aarch64.whl.

File metadata

File hashes

Hashes for stringmatch-0.14.4-cp312-cp312-musllinux_1_1_aarch64.whl
Algorithm Hash digest
SHA256 819a1e29165401be6a270edd0a2fff2ff3ddeaa90341e35dcfdc02b47db3112e
MD5 1c747b0a4ec684dcba77768d02118e82
BLAKE2b-256 c2c5561dfd082ec43710b0034c20608e9df8c7f024b0710337b0c612e109f7d9

See more details on using hashes here.

File details

Details for the file stringmatch-0.14.4-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for stringmatch-0.14.4-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 5ab7b53ecc4664218c73f6cc0fbca6cf04b21978fbfa3a96e700916086e135b4
MD5 7fd62693a881b631ec0cc124e7c698c0
BLAKE2b-256 3855097d91a9b2144b6d527bec014b487781664c235181f35b2a6f705a0b6b99

See more details on using hashes here.

File details

Details for the file stringmatch-0.14.4-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for stringmatch-0.14.4-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 500e19999ecd3dd0232d67df74062e6ada942e80570d8f9d16593f90ad7891f0
MD5 31d1e4f62a6a6243abd40ea963a1833d
BLAKE2b-256 453cde36fe30532615c11a57de8df2541b4e226dcc6a0b6fa81ca8ac69fded65

See more details on using hashes here.

File details

Details for the file stringmatch-0.14.4-cp312-cp312-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl.

File metadata

File hashes

Hashes for stringmatch-0.14.4-cp312-cp312-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl
Algorithm Hash digest
SHA256 91ab72d1af7cd902a70b7412cc7f8bd04c1a327b30ba0f1ee06985027994d01c
MD5 8697e8658497b7aa2b5ed4f5eef0648f
BLAKE2b-256 b51207cadceebb5871b204715688b06cf633e1a5a4823cf969ba1f532aeaf7b1

See more details on using hashes here.

File details

Details for the file stringmatch-0.14.4-cp312-cp312-macosx_10_9_x86_64.whl.

File metadata

File hashes

Hashes for stringmatch-0.14.4-cp312-cp312-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 04d1dfaf0b18cabca34c9eb6559c71deac6f6f5b8b7c5c2264721846ef364f6d
MD5 effeb1efa3f5c865bc952d84c1093a61
BLAKE2b-256 5b64b2546b0e2cd80e322b5b1ba409365fa090127532dea2b2ed38ecf7e784de

See more details on using hashes here.

File details

Details for the file stringmatch-0.14.4-cp311-cp311-win_amd64.whl.

File metadata

File hashes

Hashes for stringmatch-0.14.4-cp311-cp311-win_amd64.whl
Algorithm Hash digest
SHA256 b6763b98546378458488e5e4db7789e1bfc6beb4eccda57b804480eac331b338
MD5 152d31826c35c70b29d0c3f088386d35
BLAKE2b-256 85b7025bd6ce382aea7def86eb62227f047781308671e6287cfaa5cc17d7942d

See more details on using hashes here.

File details

Details for the file stringmatch-0.14.4-cp311-cp311-win32.whl.

File metadata

File hashes

Hashes for stringmatch-0.14.4-cp311-cp311-win32.whl
Algorithm Hash digest
SHA256 9c3d038a3b8e7aec5c32bf91dbd77472c79761c429c02597681685d735976c59
MD5 898326a766b72eebf7537aefb28c2136
BLAKE2b-256 219e745b8e308b84a136f59e74d62d33e39c11d9ab1b15edbcf42c3517a0d899

See more details on using hashes here.

File details

Details for the file stringmatch-0.14.4-cp311-cp311-musllinux_1_1_x86_64.whl.

File metadata

File hashes

Hashes for stringmatch-0.14.4-cp311-cp311-musllinux_1_1_x86_64.whl
Algorithm Hash digest
SHA256 b5099598411b131eab6ba21d52968cf59f13914d01f6ff16eda5bb804994d4f2
MD5 36ed54e166ffea9a60f4ead578060a79
BLAKE2b-256 f01e0879ca3fa6b3ba6e22e255765d8a35066a8035738c363ee82028debb2ebe

See more details on using hashes here.

File details

Details for the file stringmatch-0.14.4-cp311-cp311-musllinux_1_1_i686.whl.

File metadata

File hashes

Hashes for stringmatch-0.14.4-cp311-cp311-musllinux_1_1_i686.whl
Algorithm Hash digest
SHA256 eb0e11c5e141c948a6e9c2a5caf4876c0b5f2d4bc9087ef623209c6114df714b
MD5 d31586754c154dd352e906da6b43889c
BLAKE2b-256 ce15c51756a9632a9bd7e366b6a3e7aa4ea27dd84d45ca976e3e5dc41c88dc69

See more details on using hashes here.

File details

Details for the file stringmatch-0.14.4-cp311-cp311-musllinux_1_1_aarch64.whl.

File metadata

File hashes

Hashes for stringmatch-0.14.4-cp311-cp311-musllinux_1_1_aarch64.whl
Algorithm Hash digest
SHA256 296de36958bca7825ab88bc0ad2cfb3833f513287012f3277e2b2fab916feb92
MD5 4f718f92197f1291f6f98d7bbb6bd571
BLAKE2b-256 d26dca83a07ecc4769214c83be0c9cf4e63ca01630dd61f725fb812f97e1766a

See more details on using hashes here.

File details

Details for the file stringmatch-0.14.4-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for stringmatch-0.14.4-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 a333fb7c2bb25be0e364800fa442bf4465b720ebcb59f78e540c235e1890bf78
MD5 02bfe691a5488719488f2ce0208c8c72
BLAKE2b-256 3b57297b87bc3f456975a366816b052ac5b4dfb825cb6ea9d0497792a6cb607c

See more details on using hashes here.

File details

Details for the file stringmatch-0.14.4-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for stringmatch-0.14.4-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 5bf594ba332209dd15076a0d60189ff2d934c3a8857855b08e22204a04e7eb8d
MD5 2368b9afa812921b08e3a1794428b99a
BLAKE2b-256 411eedf36fe2c47a67c3012f8adf6a9431c4c0b05f459bc2eeb6208fde04d73b

See more details on using hashes here.

File details

Details for the file stringmatch-0.14.4-cp311-cp311-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl.

File metadata

File hashes

Hashes for stringmatch-0.14.4-cp311-cp311-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl
Algorithm Hash digest
SHA256 6ec2007630b9c0280224828737a642b264cfc90488ee1716a573fdf4efe13cbc
MD5 efe9b0258821cdb9ebfe2935389bb076
BLAKE2b-256 eb67a67b5188afe497fd0791c4336d48e95930101370aef97ddde02e94037ec8

See more details on using hashes here.

File details

Details for the file stringmatch-0.14.4-cp311-cp311-macosx_10_9_x86_64.whl.

File metadata

File hashes

Hashes for stringmatch-0.14.4-cp311-cp311-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 40452c9e095067f6d5353b2bbe563a521ce777ac0e62d87a609b65b283584062
MD5 c808e5f8d5db661c5340c0581f77a83b
BLAKE2b-256 4ddeed4cf1f84448f20e54a1a9c07853ba1454ef3058b1ee634b4aefa618faf4

See more details on using hashes here.

File details

Details for the file stringmatch-0.14.4-cp310-cp310-win_amd64.whl.

File metadata

File hashes

Hashes for stringmatch-0.14.4-cp310-cp310-win_amd64.whl
Algorithm Hash digest
SHA256 f24738167ee4c3f7a2c01fb7e024197e64fea8c68a7c5c52f84a13ccdff54da3
MD5 15f3e9057d1c90fafda196e357b4891d
BLAKE2b-256 6f7316c6e6a470e1fca052883ef2e604895091ddd75affb3f51fdebd012db79e

See more details on using hashes here.

File details

Details for the file stringmatch-0.14.4-cp310-cp310-win32.whl.

File metadata

File hashes

Hashes for stringmatch-0.14.4-cp310-cp310-win32.whl
Algorithm Hash digest
SHA256 21850223b246f66f5f825cbd093a7c49c1a3718240dcca71101aa69fda1df087
MD5 973e86c7949ea084a68407c6f69350a8
BLAKE2b-256 3054dd2b60c006672bc5de5003adf5f2f51444aa6867ad8a69d67fae90fed916

See more details on using hashes here.

File details

Details for the file stringmatch-0.14.4-cp310-cp310-musllinux_1_1_x86_64.whl.

File metadata

File hashes

Hashes for stringmatch-0.14.4-cp310-cp310-musllinux_1_1_x86_64.whl
Algorithm Hash digest
SHA256 5b011dd01c3e15d476779678d0a7067f1fec179c77f2c515f927f614c5f43abf
MD5 0485192151160d125f6499bb810a8c5d
BLAKE2b-256 e3f00bca800ce71987fde38ef2b081e25bb91a655ba72efff6669c3a3bdbee8c

See more details on using hashes here.

File details

Details for the file stringmatch-0.14.4-cp310-cp310-musllinux_1_1_i686.whl.

File metadata

File hashes

Hashes for stringmatch-0.14.4-cp310-cp310-musllinux_1_1_i686.whl
Algorithm Hash digest
SHA256 580960710618439eee8e217cd27702909790c425b25270c3859ed5af9938b78e
MD5 bb61988978b7e5ec87f389db7410aa0b
BLAKE2b-256 4e1272e64d2798474c44956ff9c01ba2899fb207621393a2cef0d02b0dc22a00

See more details on using hashes here.

File details

Details for the file stringmatch-0.14.4-cp310-cp310-musllinux_1_1_aarch64.whl.

File metadata

File hashes

Hashes for stringmatch-0.14.4-cp310-cp310-musllinux_1_1_aarch64.whl
Algorithm Hash digest
SHA256 216619f4734a6c09de14beb757999df06e42e6071dc9e49384650902595b3754
MD5 dd178101d33fd8b87418aa2c67e2a65d
BLAKE2b-256 44a6573b2965a4725c292d3596426fff28195f81e82277aeedb6bdb11686fac8

See more details on using hashes here.

File details

Details for the file stringmatch-0.14.4-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for stringmatch-0.14.4-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 2ac9c8c836e3b9a9c5b63efd03b686ab77a0f41830209b832929f6bdb6bf2f7b
MD5 61aa0e5ea75c7e1dd80c53912eee81ec
BLAKE2b-256 17b993308f55d712bfa45dc9baaa1577c006c86a5178348f2dec8626cff9e690

See more details on using hashes here.

File details

Details for the file stringmatch-0.14.4-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for stringmatch-0.14.4-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 64b0cda6fdef1aab4ab843d58d26e87f806f85bdc6b8d4ee71c179ee7ab5716b
MD5 cf251fc901f1076047a5a1cf2458648a
BLAKE2b-256 0f26be716e1469bbcb1b455c20e11d8b7f0bf919f514e0ce0cf8dde631ef0654

See more details on using hashes here.

File details

Details for the file stringmatch-0.14.4-cp310-cp310-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl.

File metadata

File hashes

Hashes for stringmatch-0.14.4-cp310-cp310-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl
Algorithm Hash digest
SHA256 f18f386180d923b55d3f59b599f5107e129685a6ae454310aaa8a41279173f94
MD5 90757cc76dab55897a7764d75c94967a
BLAKE2b-256 ebdc9886e30e7587b572cd7bef915a5ea7a31c5f4146b1e83c8b6d4786f3e544

See more details on using hashes here.

File details

Details for the file stringmatch-0.14.4-cp310-cp310-macosx_10_9_x86_64.whl.

File metadata

File hashes

Hashes for stringmatch-0.14.4-cp310-cp310-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 62a405905e00e176f6493730dba9e4b765d4c8a1cbecb627fafb151ea98a8bae
MD5 b444d40963743970fabf5bf573095ee4
BLAKE2b-256 5fb5b2c825a2fda154235e404c238333be6d77aca60d4f549ca1ad8168d1fb65

See more details on using hashes here.

File details

Details for the file stringmatch-0.14.4-cp39-cp39-win_amd64.whl.

File metadata

File hashes

Hashes for stringmatch-0.14.4-cp39-cp39-win_amd64.whl
Algorithm Hash digest
SHA256 dadf9124926c31819be43e8ad6a88039ac4a6819928ed5edd0614bff8eb08401
MD5 0de98f114450f2445a9126b981df534c
BLAKE2b-256 36c7ab76c524c1883be7a35413a1ab39c2f854da00dd6f0347323df4d9c627a1

See more details on using hashes here.

File details

Details for the file stringmatch-0.14.4-cp39-cp39-win32.whl.

File metadata

  • Download URL: stringmatch-0.14.4-cp39-cp39-win32.whl
  • Upload date:
  • Size: 76.7 kB
  • Tags: CPython 3.9, Windows x86
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.1.1 CPython/3.12.6

File hashes

Hashes for stringmatch-0.14.4-cp39-cp39-win32.whl
Algorithm Hash digest
SHA256 c840e7a5f8a8a0079bce3674534162865069508319892ad158a0b6b8b663f970
MD5 9d3bb9c306665c37fd28b257373ac912
BLAKE2b-256 7e1eb8cac4ac5d37bed24132ac438d4c84d9d4eb6f9239f93e9386bb3ec35ba5

See more details on using hashes here.

File details

Details for the file stringmatch-0.14.4-cp39-cp39-musllinux_1_1_x86_64.whl.

File metadata

File hashes

Hashes for stringmatch-0.14.4-cp39-cp39-musllinux_1_1_x86_64.whl
Algorithm Hash digest
SHA256 48cee214499e8375b7ad3ba47ac017b7818847c7c88c71525e193eb821cde42c
MD5 88cc879c2ac9f9e821d1da9b91f0357f
BLAKE2b-256 9537097d191267f634425f8a94a881fac39f2f61589cf42ba79a439199425352

See more details on using hashes here.

File details

Details for the file stringmatch-0.14.4-cp39-cp39-musllinux_1_1_i686.whl.

File metadata

File hashes

Hashes for stringmatch-0.14.4-cp39-cp39-musllinux_1_1_i686.whl
Algorithm Hash digest
SHA256 d9295fcee4ead0ccf88b57df543a64727ef5acc84a24619959a6fa753ec5e239
MD5 31841d546dcc5d4791a01be93652c1c2
BLAKE2b-256 98cc6a287c7cd1133667d304d8c7fc6b7fa883481ff8863cbd401d59d58ed5be

See more details on using hashes here.

File details

Details for the file stringmatch-0.14.4-cp39-cp39-musllinux_1_1_aarch64.whl.

File metadata

File hashes

Hashes for stringmatch-0.14.4-cp39-cp39-musllinux_1_1_aarch64.whl
Algorithm Hash digest
SHA256 df6199676f67de88f3bd459d7f16861879eb8c20c08aed906d86007256937c22
MD5 52e525b3921a908740d859217eded032
BLAKE2b-256 651d7c01ee525a387484b043b912aad1691d31b97d5b04125a928bf0a2dd3285

See more details on using hashes here.

File details

Details for the file stringmatch-0.14.4-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for stringmatch-0.14.4-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 c4e00774fdc3c91342612ce091806be1606161c7d19a9b6116f9d1d71273bf92
MD5 3ffb34f14536b93d36fe199acee4e4eb
BLAKE2b-256 592afbe9dd16ac6dfc90e871861adea2c206d8fec75b1d36d6316e418d871dcb

See more details on using hashes here.

File details

Details for the file stringmatch-0.14.4-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for stringmatch-0.14.4-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 523eb3a78588356992bef51d3d4797db61a520f47e9ee533d1d41b636d71a26f
MD5 c438c586416361f13576ec4e7b397a8d
BLAKE2b-256 fd95bddb3bbbe377d855f73acb6fcc567c38323a7b35f677f1c13f2c586bb94c

See more details on using hashes here.

File details

Details for the file stringmatch-0.14.4-cp39-cp39-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl.

File metadata

File hashes

Hashes for stringmatch-0.14.4-cp39-cp39-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl
Algorithm Hash digest
SHA256 d9bddb4e9cdcc62e4c78907b456890d01e884c4238d91a9fadfafe63f220398f
MD5 5fe6870fa4c42b40259f78de6ed3d54e
BLAKE2b-256 e519852d8f9f7cf7138cfea9c346ae055d9bd5bfdb628c9eb9318bc61a830da8

See more details on using hashes here.

File details

Details for the file stringmatch-0.14.4-cp39-cp39-macosx_10_9_x86_64.whl.

File metadata

File hashes

Hashes for stringmatch-0.14.4-cp39-cp39-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 04f9dce734e69eed56459159f6fc15bbfa1f3355f2d93ac98be01957e5c944e9
MD5 f8b463733a7e544988df39f5a078f03b
BLAKE2b-256 08130cbae8b7c401f726305167c3780453dc83c11c3183395706ec56064e4445

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