Skip to main content

A high-performance matcher designed to solve LOGICAL and TEXT VARIATIONS problems in word matching, implemented in Rust.

Project description

Matcher Rust Implementation with PyO3 Binding

PyPI - Version PyPI - Python Version PyPI - License

A high-performance matcher designed to solve LOGICAL and TEXT VARIATIONS problems in word matching, implemented in Rust with PyO3 bindings.

For detailed implementation, see the Design Document.

Features

  • Multiple Matching Methods:
    • Simple Word Matching
    • Regex-Based Matching
    • Similarity-Based Matching
  • Text Normalization:
    • Fanjian: Simplify traditional Chinese characters to simplified ones. Example: 蟲艸 -> 虫艹
    • Delete: Remove specific characters. Example: *Fu&*iii&^%%*&kkkk -> Fuiiikkkk
    • Normalize: Normalize special characters to identifiable characters. Example: 𝜢𝕰𝕃𝙻𝝧 𝙒ⓞᵣℒ𝒟! -> hello world!
    • PinYin: Convert Chinese characters to Pinyin for fuzzy matching. Example: 西安 -> xi an, matches 洗按 -> xi an, but not -> xian
    • PinYinChar: Convert Chinese characters to Pinyin. Example: 西安 -> xian, matches 洗按 and -> xian
  • AND OR NOT Word Matching:
    • Takes into account the number of repetitions of words.
    • Example: hello&world matches hello world and world,hello
    • Example: 无&法&无&天 matches 无无法天 (because is repeated twice), but not 无法天
    • Example: hello~helloo~hhello matches hello but not helloo and hhello
  • Customizable Exemption Lists: Exclude specific words from matching.
  • Efficient Handling of Large Word Lists: Optimized for performance.

Installation

Use pip

pip install matcher_py

Install pre-built binary

Visit the release page to download the pre-built binary.

Build from source

You need to have rust and maturin installed.

# Clone the repository
git clone https://github.com/Lips7/Matcher.git
cd Matcher/matcher_py

# Install maturin
pip install maturin

# Build and install the package
maturin develop --release

Usage

All relevant types are defined in extension_types.py.

Text Process Usage

Here’s an example of how to use the reduce_text_process and text_process functions:

from matcher_py import reduce_text_process, text_process
from matcher_py.extension_types import ProcessType

# Combine and reduce multiple transformations
print(reduce_text_process(ProcessType.MatchDeleteNormalize, "hello, world!"))
# Perform a single transformation
print(text_process(ProcessType.MatchDelete, "hello, world!"))

Matcher Basic Usage

Here’s an example of how to use the Matcher:

import json

from matcher_py import Matcher
from matcher_py.extension_types import MatchTable, MatchTableType, ProcessType, RegexMatchType, SimMatchType

matcher = Matcher(
    json.dumps({
        1: [
            MatchTable(
                table_id=1,
                match_table_type=MatchTableType.Simple(process_type=ProcessType.MatchFanjianDeleteNormalize),
                word_list=["hello", "world"],
                exemption_process_type=ProcessType.MatchNone,
                exemption_word_list=["word"],
            ),
            MatchTable(
                table_id=2,
                match_table_type=MatchTableType.Regex(
                    process_type=ProcessType.MatchFanjianDeleteNormalize,
                    regex_match_type=RegexMatchType.MatchRegex
                ),
                word_list=["h[aeiou]llo"],
                exemption_process_type=ProcessType.MatchNone,
                exemption_word_list=[],
            )
        ],
        2: [
            MatchTable(
                table_id=3,
                match_table_type=MatchTableType.Similar(
                    process_type=ProcessType.MatchFanjianDeleteNormalize,
                    sim_match_type=SimMatchType.MatchLevenshtein,
                    threshold=0.5
                ),
                word_list=["halxo"],
                exemption_process_type=ProcessType.MatchNone,
                exemption_word_list=[],
            )
        ]
    }).encode()
)
# Check if a text matches
assert matcher.is_match("hello")
assert not matcher.is_match("word")

# Perform process as a list
result = matcher.process("hello")
print(result)

# Perform word matching as a dict
match_result = matcher.word_match(r"hello, world")
print(match_result)

# Perform word matching as a string
result_str = matcher.word_match_as_string("hello")
print(result_str)

Simple Matcher Basic Usage

Here’s an example of how to use the SimpleMatcher:

import json

from matcher_py import SimpleMatcher
from matcher_py.extension_types import ProcessType

simple_matcher = SimpleMatcher(
    json.dumps(
        {
            ProcessType.MatchNone: {
                1: "hello&world",
                2: "word&word~hello"
            },
            ProcessType.MatchDelete: {
                3: "hallo"
            }
        }
    ).encode()
)
# Check if a text matches
assert simple_matcher.is_match("hello^&!#*#&!^#*()world")
# Perform simple processing
result = simple_matcher.process("hello,world,word,word,hallo")
print(result)

Explanation of the configuration

  • Matcher's configuration is defined by the MatchTableMap = Dict[int, List[MatchTable]] type, the key of MatchTableMap is called match_id, for each match_id, the table_id inside is required to be unique.
  • SimpleMatcher's configuration is defined by the SimpleTable = Dict[ProcessType, Dict[int, str]] type, the value Dict[int, str]'s key is called word_id, word_id is required to be globally unique.

MatchTable

  • table_id: The unique ID of the match table.
  • match_table_type: The type of the match table.
  • word_list: The word list of the match table.
  • exemption_process_type: The type of the exemption simple match.
  • exemption_word_list: The exemption word list of the match table.

For each match table, word matching is performed over the word_list, and exemption word matching is performed over the exemption_word_list. If the exemption word matching result is True, the word matching result will be False.

MatchTableType

  • Simple: Supports simple multiple patterns matching with text normalization defined by process_type.
    • It can handle combination patterns and repeated times sensitive matching, delimited by & and ~, such as hello&world&hello will match hellohelloworld and worldhellohello, but not helloworld due to the repeated times of hello.
  • Regex: Supports regex patterns matching.
    • SimilarChar: Supports similar character matching using regex.
      • ["hello,hallo,hollo,hi", "word,world,wrd,🌍", "!,?,~"] will match helloworld!, hollowrd?, hi🌍~ ··· any combinations of the words split by , in the list.
    • Acrostic: Supports acrostic matching using regex (currently only supports Chinese and simple English sentences).
      • ["h,e,l,l,o", "你,好"] will match hope, endures, love, lasts, onward. and 你的笑容温暖, 好心情常伴。.
    • Regex: Supports regex matching.
      • ["h[aeiou]llo", "w[aeiou]rd"] will match hello, world, hillo, wurld ··· any text that matches the regex in the list.
  • Similar: Supports similar text matching based on distance and threshold.
    • Levenshtein: Supports similar text matching based on Levenshtein distance.

ProcessType

  • None: No transformation.
  • Fanjian: Traditional Chinese to simplified Chinese transformation. Based on FANJIAN.
    • 妳好 -> 你好
    • 現⾝ -> 现身
  • Delete: Delete all punctuation, special characters and white spaces. Based on TEXT_DELETE and WHITE_SPACE.
    • hello, world! -> helloworld
    • 《你∷好》 -> 你好
  • Normalize: Normalize all English character variations and number variations to basic characters. Based on NORM and NUM_NORM.
    • ℋЀ⒈㈠Õ -> he11o
    • ⒈Ƨ㊂ -> 123
  • PinYin: Convert all unicode Chinese characters to pinyin with boundaries. Based on PINYIN.
    • 你好 -> ni hao
    • 西安 -> xi an
  • PinYinChar: Convert all unicode Chinese characters to pinyin without boundaries. Based on PINYIN.
    • 你好 -> nihao
    • 西安 -> xian

You can combine these transformations as needed. Pre-defined combinations like DeleteNormalize and FanjianDeleteNormalize are provided for convenience.

Avoid combining PinYin and PinYinChar due to that PinYin is a more limited version of PinYinChar, in some cases like xian, can be treat as two words xi and an, or only one word xian.

Contributing

Contributions to matcher_py are welcome! If you find a bug or have a feature request, please open an issue on the GitHub repository. If you would like to contribute code, please fork the repository and submit a pull request.

License

matcher_py is licensed under the MIT OR Apache-2.0 license.

More Information

For more details, visit the GitHub repository.

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

matcher_py-0.8.1.tar.gz (326.0 kB view details)

Uploaded Source

Built Distributions

If you're not sure about the file name format, learn more about wheel file names.

matcher_py-0.8.1-cp313-cp313-win_amd64.whl (1.8 MB view details)

Uploaded CPython 3.13Windows x86-64

matcher_py-0.8.1-cp313-cp313-musllinux_1_2_x86_64.whl (2.1 MB view details)

Uploaded CPython 3.13musllinux: musl 1.2+ x86-64

matcher_py-0.8.1-cp313-cp313-musllinux_1_2_aarch64.whl (2.0 MB view details)

Uploaded CPython 3.13musllinux: musl 1.2+ ARM64

matcher_py-0.8.1-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (1.9 MB view details)

Uploaded CPython 3.13manylinux: glibc 2.17+ x86-64

matcher_py-0.8.1-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (1.8 MB view details)

Uploaded CPython 3.13manylinux: glibc 2.17+ ARM64

matcher_py-0.8.1-cp313-cp313-macosx_11_0_arm64.whl (1.7 MB view details)

Uploaded CPython 3.13macOS 11.0+ ARM64

matcher_py-0.8.1-cp312-cp312-win_amd64.whl (1.8 MB view details)

Uploaded CPython 3.12Windows x86-64

matcher_py-0.8.1-cp312-cp312-musllinux_1_2_x86_64.whl (2.1 MB view details)

Uploaded CPython 3.12musllinux: musl 1.2+ x86-64

matcher_py-0.8.1-cp312-cp312-musllinux_1_2_aarch64.whl (2.0 MB view details)

Uploaded CPython 3.12musllinux: musl 1.2+ ARM64

matcher_py-0.8.1-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (1.9 MB view details)

Uploaded CPython 3.12manylinux: glibc 2.17+ x86-64

matcher_py-0.8.1-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (1.8 MB view details)

Uploaded CPython 3.12manylinux: glibc 2.17+ ARM64

matcher_py-0.8.1-cp312-cp312-macosx_11_0_arm64.whl (1.7 MB view details)

Uploaded CPython 3.12macOS 11.0+ ARM64

matcher_py-0.8.1-cp311-cp311-win_amd64.whl (1.8 MB view details)

Uploaded CPython 3.11Windows x86-64

matcher_py-0.8.1-cp311-cp311-musllinux_1_2_x86_64.whl (2.1 MB view details)

Uploaded CPython 3.11musllinux: musl 1.2+ x86-64

matcher_py-0.8.1-cp311-cp311-musllinux_1_2_aarch64.whl (2.0 MB view details)

Uploaded CPython 3.11musllinux: musl 1.2+ ARM64

matcher_py-0.8.1-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (1.9 MB view details)

Uploaded CPython 3.11manylinux: glibc 2.17+ x86-64

matcher_py-0.8.1-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (1.8 MB view details)

Uploaded CPython 3.11manylinux: glibc 2.17+ ARM64

matcher_py-0.8.1-cp311-cp311-macosx_11_0_arm64.whl (1.7 MB view details)

Uploaded CPython 3.11macOS 11.0+ ARM64

matcher_py-0.8.1-cp310-cp310-win_amd64.whl (1.8 MB view details)

Uploaded CPython 3.10Windows x86-64

matcher_py-0.8.1-cp310-cp310-musllinux_1_2_x86_64.whl (2.1 MB view details)

Uploaded CPython 3.10musllinux: musl 1.2+ x86-64

matcher_py-0.8.1-cp310-cp310-musllinux_1_2_aarch64.whl (2.0 MB view details)

Uploaded CPython 3.10musllinux: musl 1.2+ ARM64

matcher_py-0.8.1-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (1.9 MB view details)

Uploaded CPython 3.10manylinux: glibc 2.17+ x86-64

matcher_py-0.8.1-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (1.8 MB view details)

Uploaded CPython 3.10manylinux: glibc 2.17+ ARM64

matcher_py-0.8.1-cp310-cp310-macosx_11_0_arm64.whl (1.7 MB view details)

Uploaded CPython 3.10macOS 11.0+ ARM64

matcher_py-0.8.1-cp39-cp39-win_amd64.whl (1.8 MB view details)

Uploaded CPython 3.9Windows x86-64

matcher_py-0.8.1-cp39-cp39-musllinux_1_2_x86_64.whl (2.1 MB view details)

Uploaded CPython 3.9musllinux: musl 1.2+ x86-64

matcher_py-0.8.1-cp39-cp39-musllinux_1_2_aarch64.whl (2.0 MB view details)

Uploaded CPython 3.9musllinux: musl 1.2+ ARM64

matcher_py-0.8.1-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (1.9 MB view details)

Uploaded CPython 3.9manylinux: glibc 2.17+ x86-64

matcher_py-0.8.1-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (1.8 MB view details)

Uploaded CPython 3.9manylinux: glibc 2.17+ ARM64

matcher_py-0.8.1-cp39-cp39-macosx_11_0_arm64.whl (1.7 MB view details)

Uploaded CPython 3.9macOS 11.0+ ARM64

matcher_py-0.8.1-cp38-cp38-win_amd64.whl (1.8 MB view details)

Uploaded CPython 3.8Windows x86-64

matcher_py-0.8.1-cp38-cp38-musllinux_1_2_x86_64.whl (2.1 MB view details)

Uploaded CPython 3.8musllinux: musl 1.2+ x86-64

matcher_py-0.8.1-cp38-cp38-musllinux_1_2_aarch64.whl (2.0 MB view details)

Uploaded CPython 3.8musllinux: musl 1.2+ ARM64

matcher_py-0.8.1-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (1.9 MB view details)

Uploaded CPython 3.8manylinux: glibc 2.17+ x86-64

matcher_py-0.8.1-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (1.8 MB view details)

Uploaded CPython 3.8manylinux: glibc 2.17+ ARM64

matcher_py-0.8.1-cp38-cp38-macosx_11_0_arm64.whl (1.7 MB view details)

Uploaded CPython 3.8macOS 11.0+ ARM64

File details

Details for the file matcher_py-0.8.1.tar.gz.

File metadata

  • Download URL: matcher_py-0.8.1.tar.gz
  • Upload date:
  • Size: 326.0 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.13.12

File hashes

Hashes for matcher_py-0.8.1.tar.gz
Algorithm Hash digest
SHA256 04b7afcc4bc7cfed6250903d37f00903c48de0a86cb7b3d0663ade22d8e5c0c5
MD5 1285d544592cc01be59b1d0b45676d37
BLAKE2b-256 04d0d334b88dd94195f56d5343178f9ac201b2ca8db073817f03b56fba95960e

See more details on using hashes here.

File details

Details for the file matcher_py-0.8.1-cp313-cp313-win_amd64.whl.

File metadata

  • Download URL: matcher_py-0.8.1-cp313-cp313-win_amd64.whl
  • Upload date:
  • Size: 1.8 MB
  • Tags: CPython 3.13, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.13.12

File hashes

Hashes for matcher_py-0.8.1-cp313-cp313-win_amd64.whl
Algorithm Hash digest
SHA256 65d325e03d1b7ada9e4548b751bbf7ce961b6b26c2556228c27b2b3f41990e43
MD5 720bdbb5a6d118eac32c8214cac52026
BLAKE2b-256 f3cf1e24a8733d5f4e0ccae35ba757c99a293a9b4ef08b0d21b7054e12bfbd96

See more details on using hashes here.

File details

Details for the file matcher_py-0.8.1-cp313-cp313-musllinux_1_2_x86_64.whl.

File metadata

File hashes

Hashes for matcher_py-0.8.1-cp313-cp313-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 c8a3bee2a471624e434117bcfac0f1e56f9d32b5b2bcae4a942938d560ca9d01
MD5 acafb9887196ca89295cfada9f30326a
BLAKE2b-256 dd1039d3c25e96da9794060c7c97a0bed574da008661bb6b8dc488eb7c4acac0

See more details on using hashes here.

File details

Details for the file matcher_py-0.8.1-cp313-cp313-musllinux_1_2_aarch64.whl.

File metadata

File hashes

Hashes for matcher_py-0.8.1-cp313-cp313-musllinux_1_2_aarch64.whl
Algorithm Hash digest
SHA256 38db3c5595b9f859dcd6c4aa17529e74bda7c498a2345229768e2d559021cd68
MD5 3d8182aa5aeb1077527d1d2675360b35
BLAKE2b-256 3b2df0d8bd9261859b5198efbef65c300901bc635a2bf01b66a85ae90877af84

See more details on using hashes here.

File details

Details for the file matcher_py-0.8.1-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for matcher_py-0.8.1-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 9330c478e58c119f27f6565ce9e3083c22adbdeffe6ecacb1b7b0d3d7b6416b7
MD5 dc90eddd5e21768cc422616f97e27abc
BLAKE2b-256 5084777f791eebb42dd9ebbcde5e2c226468765ba862237d55b5b80e61c3b1d7

See more details on using hashes here.

File details

Details for the file matcher_py-0.8.1-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for matcher_py-0.8.1-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 277702e6dfa483ab6fcd91880e68e075da99763a95eeca8e186989bf6cb88bd2
MD5 4a04e2c4fd4a231e8652718c5561319e
BLAKE2b-256 ac54c4d8a43e67d461dab5aa57c5191bb0f4f1d010434072537f7042a1db26ba

See more details on using hashes here.

File details

Details for the file matcher_py-0.8.1-cp313-cp313-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for matcher_py-0.8.1-cp313-cp313-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 15900451bc8bac01950ce3e1b34c3bf3042615165f4f9f82924ec9d40f97cdd9
MD5 bea200a7bc912bf6f91a87b3bce97cc6
BLAKE2b-256 d1366fd5cb1f573a2a0ec4af45c3e91adb641f054f47b9509227d865c9185bed

See more details on using hashes here.

File details

Details for the file matcher_py-0.8.1-cp312-cp312-win_amd64.whl.

File metadata

  • Download URL: matcher_py-0.8.1-cp312-cp312-win_amd64.whl
  • Upload date:
  • Size: 1.8 MB
  • Tags: CPython 3.12, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.13.12

File hashes

Hashes for matcher_py-0.8.1-cp312-cp312-win_amd64.whl
Algorithm Hash digest
SHA256 43e88cab465f617bb4beb9192fe694f54c4b0172a3ad7427bf3edc9e5b56854c
MD5 34d5211d456f47f8066552ea965aaac7
BLAKE2b-256 9905251c26a5390d746516f668382dfe1d45b8177185abba918d298f9cc8af05

See more details on using hashes here.

File details

Details for the file matcher_py-0.8.1-cp312-cp312-musllinux_1_2_x86_64.whl.

File metadata

File hashes

Hashes for matcher_py-0.8.1-cp312-cp312-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 ea3893d8c443cc85112d0e831408715364842954dad2cf7c75806b217dc588f2
MD5 3f7bcb06fd7270932e4924f6e7b5ad6e
BLAKE2b-256 3884bffd01ffc6cab810c8e4f8222ea1fdb95dbf67d858767e6cbc84ce210b33

See more details on using hashes here.

File details

Details for the file matcher_py-0.8.1-cp312-cp312-musllinux_1_2_aarch64.whl.

File metadata

File hashes

Hashes for matcher_py-0.8.1-cp312-cp312-musllinux_1_2_aarch64.whl
Algorithm Hash digest
SHA256 d94736bbd6c1c47eda430919635c400d6544d2abc1fe46edf419cad355f2190b
MD5 a7de69d3eee30360fca0f990b01de88c
BLAKE2b-256 5ac991f9ad3f1ec15725649a41f9490572fad9abdc5c44832535dbe209301b32

See more details on using hashes here.

File details

Details for the file matcher_py-0.8.1-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for matcher_py-0.8.1-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 d4ea5d3c16a7a6ac3fda1523b5964f12348efcf6cfd9364ec3839eb893c88392
MD5 789b824d29feefb773ee9c2583c660f5
BLAKE2b-256 40360632c837fd33ea61b5d5c449b6523db649799c5606aaa92acf5152725d59

See more details on using hashes here.

File details

Details for the file matcher_py-0.8.1-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for matcher_py-0.8.1-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 e995fb42a8485691259f7b54167f7ae1244484e012389a6c44815ff78b70d399
MD5 8a03bd45c66f9b7a6077df0422636a97
BLAKE2b-256 24b2913376a809809272fba4518e2715a1539be53e961f24c59648bceb293f93

See more details on using hashes here.

File details

Details for the file matcher_py-0.8.1-cp312-cp312-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for matcher_py-0.8.1-cp312-cp312-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 7cd99f2872ecd0735f959784fe528e2dd346752ec23ccaedb17360390a88256e
MD5 c86f79e61279fa7f541112c4afc1c079
BLAKE2b-256 2aff61d720a320940012e56a98803941098838e306bf38a4821fc8a4337e654c

See more details on using hashes here.

File details

Details for the file matcher_py-0.8.1-cp311-cp311-win_amd64.whl.

File metadata

  • Download URL: matcher_py-0.8.1-cp311-cp311-win_amd64.whl
  • Upload date:
  • Size: 1.8 MB
  • Tags: CPython 3.11, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.13.12

File hashes

Hashes for matcher_py-0.8.1-cp311-cp311-win_amd64.whl
Algorithm Hash digest
SHA256 cfa3b5e89a3549a366b97ac3fbd87b63c22f0d56899a8f1e52a09475215b1271
MD5 c1bf384360e4c354cacd84121e9ce412
BLAKE2b-256 51fb2d6935b686547c6c32fa897b70af372ccfe9d34168acc864ef7828933e48

See more details on using hashes here.

File details

Details for the file matcher_py-0.8.1-cp311-cp311-musllinux_1_2_x86_64.whl.

File metadata

File hashes

Hashes for matcher_py-0.8.1-cp311-cp311-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 c15635fd2ec60af2fd799389c4b9bb832f902065c559cd16a24d11535d5fd670
MD5 676e5e3d173debcd323450e7f5db851b
BLAKE2b-256 9d176a399410c718f0c12b2d6ad3404bbbc5c85610fe16c19237d7c2938dfb5b

See more details on using hashes here.

File details

Details for the file matcher_py-0.8.1-cp311-cp311-musllinux_1_2_aarch64.whl.

File metadata

File hashes

Hashes for matcher_py-0.8.1-cp311-cp311-musllinux_1_2_aarch64.whl
Algorithm Hash digest
SHA256 c5a987e363271084de5cf894e2097391adff8901167aa86f3b1554851bf71917
MD5 b40ad02fe33e087fdf31c9b6ee99edca
BLAKE2b-256 d9ebeaf136fa18333cac0f5ccd8d2f76ca2e08476de688be963684cfa7d02ec8

See more details on using hashes here.

File details

Details for the file matcher_py-0.8.1-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for matcher_py-0.8.1-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 43268df055fd0be126ef0ca44f2f7eab4cdd4f3fa9969609b4fd37be44b66bf0
MD5 7e6e98a10fb1912a6746d2c43bac445e
BLAKE2b-256 fcd4ae599b86358c6862888df1c60bebd467db2a2d0ab92007392cd7f6a15c61

See more details on using hashes here.

File details

Details for the file matcher_py-0.8.1-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for matcher_py-0.8.1-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 60f766772ab615667dd66fb858c15b7a281d9fcc2ef046c8e0281dc5c155422b
MD5 27c1eb3077af332bcac16d840bd9eaab
BLAKE2b-256 4a3594a4b2aaae244f8a048bd07bf63869bc8409ebab6880f490b28fe8bfb528

See more details on using hashes here.

File details

Details for the file matcher_py-0.8.1-cp311-cp311-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for matcher_py-0.8.1-cp311-cp311-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 d6ffc34316e8102726cab1383052c2e327d92b06c8ad2e1ffc06a745fef3474f
MD5 3b995c039778c9c31e8721d5bae49b19
BLAKE2b-256 b3164ba654fa06055da57007d0cae17220e1903ce5450b6effbaad200893ef69

See more details on using hashes here.

File details

Details for the file matcher_py-0.8.1-cp310-cp310-win_amd64.whl.

File metadata

  • Download URL: matcher_py-0.8.1-cp310-cp310-win_amd64.whl
  • Upload date:
  • Size: 1.8 MB
  • Tags: CPython 3.10, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.13.12

File hashes

Hashes for matcher_py-0.8.1-cp310-cp310-win_amd64.whl
Algorithm Hash digest
SHA256 1197ebccd3a9c7822a31aff70ec736b6bf86276cb2348c1bbc6c2a80ce3ffc7b
MD5 ea5a90752469940f52ea2de792e40e38
BLAKE2b-256 73901acf428cae734fdfaa291def63b73870d7184133713dbd8021dcd34f1282

See more details on using hashes here.

File details

Details for the file matcher_py-0.8.1-cp310-cp310-musllinux_1_2_x86_64.whl.

File metadata

File hashes

Hashes for matcher_py-0.8.1-cp310-cp310-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 023c05c8a84322f3a668d9bd20c7d192a4db962c360c29283e80d083fa3d719a
MD5 68c29a2551612ed295e51393494208e0
BLAKE2b-256 3070f6dda3bbd99d071044545620db360608e8dce52b0bb7e8ea2f5e747f1c1b

See more details on using hashes here.

File details

Details for the file matcher_py-0.8.1-cp310-cp310-musllinux_1_2_aarch64.whl.

File metadata

File hashes

Hashes for matcher_py-0.8.1-cp310-cp310-musllinux_1_2_aarch64.whl
Algorithm Hash digest
SHA256 d4960469d68d045354b730843ad620a8426fc56fe5a24b20018bd31adb503ed9
MD5 28165c99145987a90727bae8153c9063
BLAKE2b-256 a4fc358b3237ad3122ad9550d2daf96cb9d5c2254548cc9a038bea51b141ef3a

See more details on using hashes here.

File details

Details for the file matcher_py-0.8.1-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for matcher_py-0.8.1-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 3f55773e7ee8070364aa77b1966df071f10fc28fa1f52584021b331d2ae7bacb
MD5 9af57976cd008aa3f104682ecfc740c4
BLAKE2b-256 8be184554b5ab0ff9d85ff9c0d4f06df78c630c7ee5f8d3da16b7247df5125ea

See more details on using hashes here.

File details

Details for the file matcher_py-0.8.1-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for matcher_py-0.8.1-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 df7a0ecbb69de14eeb3564805e9a0f5ab0495758771b65a7b4ab5c671daa9015
MD5 add2d4c0bd54b5011d09b889ac77f8ef
BLAKE2b-256 19ab8455ff88ed3a191bd3e66574917f9584b719312aabd897413857974d5c3e

See more details on using hashes here.

File details

Details for the file matcher_py-0.8.1-cp310-cp310-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for matcher_py-0.8.1-cp310-cp310-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 037d16e1ab91eb7b2dfd5b818a8b638e8e57aef35cd3b2c4b368c0a2bb1e73f7
MD5 195502cf5976aa402c80b3db74cf89fa
BLAKE2b-256 7d4ab303fa86a626617ae13082ffef6de1fa72b9aba3ffd36172bb7ca8b42ce4

See more details on using hashes here.

File details

Details for the file matcher_py-0.8.1-cp39-cp39-win_amd64.whl.

File metadata

  • Download URL: matcher_py-0.8.1-cp39-cp39-win_amd64.whl
  • Upload date:
  • Size: 1.8 MB
  • Tags: CPython 3.9, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.13.12

File hashes

Hashes for matcher_py-0.8.1-cp39-cp39-win_amd64.whl
Algorithm Hash digest
SHA256 873764318ef6236f083f8a434445ba70627cee7d93eb2b178365297a99911da5
MD5 e0f9ba8a710ca7473c5826916e9c92ec
BLAKE2b-256 49357ec7790806338bef5d4a551c434c37c007c84643298e913dbd142e9a3325

See more details on using hashes here.

File details

Details for the file matcher_py-0.8.1-cp39-cp39-musllinux_1_2_x86_64.whl.

File metadata

File hashes

Hashes for matcher_py-0.8.1-cp39-cp39-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 6a11af4a15c42029d2cfa15ceb81651a26e2ee1e9a7de96bed4754e20b778094
MD5 e7f3e0ad2c58f406b693f468e6c45195
BLAKE2b-256 d69861c7d9712510de82566a9a2c16e95404c66a1b5558f200690071705c4200

See more details on using hashes here.

File details

Details for the file matcher_py-0.8.1-cp39-cp39-musllinux_1_2_aarch64.whl.

File metadata

File hashes

Hashes for matcher_py-0.8.1-cp39-cp39-musllinux_1_2_aarch64.whl
Algorithm Hash digest
SHA256 2a5c2b340257881a77f61e57d69b92dbec2cf70f4629a3f2639d66bdf8d27a58
MD5 65df2fe7b5956270de5b4ec2733cfaa8
BLAKE2b-256 d9a262cee146614d72631773a5f538b8656703909dba77fb03c360cac0c7a563

See more details on using hashes here.

File details

Details for the file matcher_py-0.8.1-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for matcher_py-0.8.1-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 98d0252c4c85ebfc80703ae653409027cdc7382ad007636bfec8088103cee314
MD5 cdb9d7260f49238bec42319da3a94a46
BLAKE2b-256 3a6fcf30a64d4fe1c4fcd92420ff9e8aa3756367e27580287adda0ca7b85cb58

See more details on using hashes here.

File details

Details for the file matcher_py-0.8.1-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for matcher_py-0.8.1-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 43633af12b1fe79e8093b6288e96f4ee42cac5617842c68c1b6c9f7d2d2a180d
MD5 506e01c9a37950e622d57dc3746f134f
BLAKE2b-256 6b3feb12fce4d3c3a1ba0ff203e963c23fd3a156f0d3e803ce405d4c6d5300b8

See more details on using hashes here.

File details

Details for the file matcher_py-0.8.1-cp39-cp39-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for matcher_py-0.8.1-cp39-cp39-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 666ca3679362be28bd711c52dde2e9a800ceeb68d4c758521ed965e05028ab5f
MD5 5a981b7e2babb3b7d0792a5bb3b6e9ee
BLAKE2b-256 4cf900d8900ace949be332bdacd1d9fa6f9a80d4991903a545829a1934af59b3

See more details on using hashes here.

File details

Details for the file matcher_py-0.8.1-cp38-cp38-win_amd64.whl.

File metadata

  • Download URL: matcher_py-0.8.1-cp38-cp38-win_amd64.whl
  • Upload date:
  • Size: 1.8 MB
  • Tags: CPython 3.8, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.13.12

File hashes

Hashes for matcher_py-0.8.1-cp38-cp38-win_amd64.whl
Algorithm Hash digest
SHA256 d053c174869e60c3ea99b34b9193df81a63d6b3a8fb82718ca89e9ac23153425
MD5 28fc15161d0683025953b79289f58eaf
BLAKE2b-256 9e38dafd6fbf5a90cd9e0c8287f791f305a631c8c78a22498ed24e0dd073a6f8

See more details on using hashes here.

File details

Details for the file matcher_py-0.8.1-cp38-cp38-musllinux_1_2_x86_64.whl.

File metadata

File hashes

Hashes for matcher_py-0.8.1-cp38-cp38-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 2d234f91041e9c707d65013ecaa5fa0152c77f72567b0816d47c4f523466aa88
MD5 2de9a959b4ec17e0d09176336838cefc
BLAKE2b-256 1882662626068439691a885a3b5f81996c022270dbe388677e75042867317dbb

See more details on using hashes here.

File details

Details for the file matcher_py-0.8.1-cp38-cp38-musllinux_1_2_aarch64.whl.

File metadata

File hashes

Hashes for matcher_py-0.8.1-cp38-cp38-musllinux_1_2_aarch64.whl
Algorithm Hash digest
SHA256 f5f214535384c621dec57c84d849ca78658a9894fe2bf1d8ad94880749eba74a
MD5 c3c22bc81778b70696dcb3580c8203b6
BLAKE2b-256 6cbc668f964fb6e18f8f79e8e71d1252bc735b917b094d9d74c4c383b311387e

See more details on using hashes here.

File details

Details for the file matcher_py-0.8.1-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for matcher_py-0.8.1-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 ec05f6e279ff7c0b0cd22b023a9ab64162996df645b835cfba1c96de3652708c
MD5 b17c5fad5b03a1d214de1c8935cb9d2d
BLAKE2b-256 06aae05b37277083ae7dc3cb3e40005ec7cec961dbe8f89655f106806410dc94

See more details on using hashes here.

File details

Details for the file matcher_py-0.8.1-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for matcher_py-0.8.1-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 4255a48650d89b6a796b622de0fe20d510011788d01e87aa4458f3d0494e2d18
MD5 9f4340dc6df13f07688e50d82028d2ec
BLAKE2b-256 ed47cce958eb8f221dc53a2a46e6eed38f358d2811777302e7276a353518a391

See more details on using hashes here.

File details

Details for the file matcher_py-0.8.1-cp38-cp38-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for matcher_py-0.8.1-cp38-cp38-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 87d9acd53506f16b145d821a306df80343dbac1ae5e8a82879d3b825e8a0fcdb
MD5 8e7833cabd38e0b070d0b2bfe3f7b2b3
BLAKE2b-256 c001f8363fa81eae9888216847b92b12f5453d4350e18e1dd67d8f1c362115f0

See more details on using hashes here.

Supported by

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