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

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

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.

Usage

All relevant types are defined in extension_types.py.

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.

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

print(reduce_text_process(ProcessType.MatchDeleteNormalize, "hello, world!"))
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.Regex
                ),
                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")
assert result == [{'match_id': 1,
  'table_id': 2,
  'word_id': 0,
  'word': 'h[aeiou]llo',
  'similarity': 1.0},
 {'match_id': 1,
  'table_id': 1,
  'word_id': 0,
  'word': 'hello',
  'similarity': 1.0},
 {'match_id': 2,
  'table_id': 3,
  'word_id': 0,
  'word': 'halxo',
  'similarity': 0.6}]
# Perform word matching as a dict
assert matcher.word_match(r"hello, world")[1] == [{'match_id': 1,
  'table_id': 2,
  'word_id': 0,
  'word': 'h[aeiou]llo',
  'similarity': 1.0},
 {'match_id': 1,
  'table_id': 1,
  'word_id': 0,
  'word': 'hello',
  'similarity': 1.0},
 {'match_id': 1,
  'table_id': 1,
  'word_id': 1,
  'word': 'world',
  'similarity': 1.0}]
# Perform word matching as a string
result = matcher.word_match_as_string("hello")
assert result == """{"2":[{"match_id":2,"table_id":3,"word_id":0,"word":"halxo","similarity":0.6}],"1":[{"match_id":1,"table_id":2,"word_id":0,"word":"h[aeiou]llo","similarity":1.0},{"match_id":1,"table_id":1,"word_id":0,"word":"hello","similarity":1.0}]}"""

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")
assert result == [{'word_id': 1, 'word': 'hello&world'}, {'word_id': 3, 'word': 'hallo'}]

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.7.1.tar.gz (332.2 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.7.1-cp313-cp313-win_amd64.whl (1.8 MB view details)

Uploaded CPython 3.13Windows x86-64

matcher_py-0.7.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.7.1-cp313-cp313-musllinux_1_2_aarch64.whl (2.1 MB view details)

Uploaded CPython 3.13musllinux: musl 1.2+ ARM64

matcher_py-0.7.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.7.1-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (1.9 MB view details)

Uploaded CPython 3.13manylinux: glibc 2.17+ ARM64

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

Uploaded CPython 3.13macOS 11.0+ ARM64

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

Uploaded CPython 3.12Windows x86-64

matcher_py-0.7.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.7.1-cp312-cp312-musllinux_1_2_aarch64.whl (2.1 MB view details)

Uploaded CPython 3.12musllinux: musl 1.2+ ARM64

matcher_py-0.7.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.7.1-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (1.9 MB view details)

Uploaded CPython 3.12manylinux: glibc 2.17+ ARM64

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

Uploaded CPython 3.12macOS 11.0+ ARM64

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

Uploaded CPython 3.11Windows x86-64

matcher_py-0.7.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.7.1-cp311-cp311-musllinux_1_2_aarch64.whl (2.1 MB view details)

Uploaded CPython 3.11musllinux: musl 1.2+ ARM64

matcher_py-0.7.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.7.1-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (1.9 MB view details)

Uploaded CPython 3.11manylinux: glibc 2.17+ ARM64

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

Uploaded CPython 3.11macOS 11.0+ ARM64

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

Uploaded CPython 3.10Windows x86-64

matcher_py-0.7.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.7.1-cp310-cp310-musllinux_1_2_aarch64.whl (2.1 MB view details)

Uploaded CPython 3.10musllinux: musl 1.2+ ARM64

matcher_py-0.7.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.7.1-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (1.9 MB view details)

Uploaded CPython 3.10manylinux: glibc 2.17+ ARM64

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

Uploaded CPython 3.10macOS 11.0+ ARM64

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

Uploaded CPython 3.9Windows x86-64

matcher_py-0.7.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.7.1-cp39-cp39-musllinux_1_2_aarch64.whl (2.1 MB view details)

Uploaded CPython 3.9musllinux: musl 1.2+ ARM64

matcher_py-0.7.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.7.1-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (1.9 MB view details)

Uploaded CPython 3.9manylinux: glibc 2.17+ ARM64

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

Uploaded CPython 3.9macOS 11.0+ ARM64

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

Uploaded CPython 3.8Windows x86-64

matcher_py-0.7.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.7.1-cp38-cp38-musllinux_1_2_aarch64.whl (2.1 MB view details)

Uploaded CPython 3.8musllinux: musl 1.2+ ARM64

matcher_py-0.7.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.7.1-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (1.9 MB view details)

Uploaded CPython 3.8manylinux: glibc 2.17+ ARM64

matcher_py-0.7.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.7.1.tar.gz.

File metadata

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

File hashes

Hashes for matcher_py-0.7.1.tar.gz
Algorithm Hash digest
SHA256 794d4cdc312f1d84103d5686e70f034d22afa06e59e8b2f6842709e53b4d2ab6
MD5 da24e40847ac7a9893c63d661a8c8475
BLAKE2b-256 42dafa514b2713558bced0058e75ccb3a30f520f408e07f8362877532764fc6c

See more details on using hashes here.

File details

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

File metadata

  • Download URL: matcher_py-0.7.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.11

File hashes

Hashes for matcher_py-0.7.1-cp313-cp313-win_amd64.whl
Algorithm Hash digest
SHA256 9bcbac0c7469ef5349b19b92b87cb67870c2528b20b447f174967685a6ff4b61
MD5 8853e17aab4f0a6ad419398d1858a8cd
BLAKE2b-256 4c5e7a31db8a501cd07db9ffc7c0f0b62f9aeac45e25286ced8aee76da9f3ada

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for matcher_py-0.7.1-cp313-cp313-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 6bf102eb14d7383a8340c8bc94b168142e18fe902159d2f6ce57917765ced6ea
MD5 dbc2cead0071d31de9bc261bb3db9cf1
BLAKE2b-256 0331abec5567ce3c365ae2ef9315ab48fdcdba9c213c0c826ea8bd48ea74864c

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for matcher_py-0.7.1-cp313-cp313-musllinux_1_2_aarch64.whl
Algorithm Hash digest
SHA256 df6c94d377ddd008f63917bb43f3f54dbb75d492a3ebe1fc43366ba2aed3d542
MD5 39c6660b60500b9059790fab45e95111
BLAKE2b-256 423cffc69a5e2a668b9e608d558e9c409c92bec9c404326a516760d6430aefee

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for matcher_py-0.7.1-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 eb800230d00e186d7ae621587de4d3d534ac67f085e7e6a605f3e3d1cf0d5a53
MD5 d242adbf0e12a3cf5089232972a443cd
BLAKE2b-256 a24d80f5a0f609ded0d833447d2c29ced9482c2023da3d2c0ba504381c181a6e

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for matcher_py-0.7.1-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 490d7576fd35cd90453e01cefe84c26edbed6251b55312d12474c301a4a9375e
MD5 97035415c8bb3ef9d604437876ed1e7c
BLAKE2b-256 fc76bcf153eb59d59004f26545752963bc9d4c4e6dfb057c6b046f56b9c42ab7

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for matcher_py-0.7.1-cp313-cp313-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 4129e96b7442f0d137d28342496acc25f770e5b284581d147fdfef7f9a32b630
MD5 6cff9612d789053f0f5077342d3c9a01
BLAKE2b-256 c4872741cc468f5f124e65a1c8817e165694909dda08b621074a905098c48b3e

See more details on using hashes here.

File details

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

File metadata

  • Download URL: matcher_py-0.7.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.11

File hashes

Hashes for matcher_py-0.7.1-cp312-cp312-win_amd64.whl
Algorithm Hash digest
SHA256 4fc214e380f47b32263904e4dd46d7d23b08ad0de254971c1deae001ffd7aa55
MD5 5a2befadae97b11c7a76d588dd04b244
BLAKE2b-256 0d111934d969e4c7f536ea707edb19a9908f7d0dfa0ec0b57d7b3875dd34cbfd

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for matcher_py-0.7.1-cp312-cp312-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 b9c1c14c0f3b124fd183f7ce02a4939644b92110929413cf78b0a037fdcbbf00
MD5 fcff437de6e2d49f02c5c3d9fb15469a
BLAKE2b-256 dc28d982a2ddd22929a2ee53f51f5841e57809eaef5d87da52ae59b8c80c76bf

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for matcher_py-0.7.1-cp312-cp312-musllinux_1_2_aarch64.whl
Algorithm Hash digest
SHA256 813d2bd98d2f326ee31d466bf3b977ef4ff35838c9777048ee39443271359e7d
MD5 990184c0fcb4e67c27ce7a34923b2dbf
BLAKE2b-256 cf72b989c2b57783a5f1878cf1ca12981e6df97f039832e0b4b96cfdf2ef8746

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for matcher_py-0.7.1-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 ddad963ba04d4f39b2e6e59681e69112338fad33c922c0e1698e4d9289bf9dee
MD5 0720433d51e59aefd82378ee800b4ea6
BLAKE2b-256 f7a7a237276f9918e5ea73d04764e0be5142f074a570cef5035b41f3e6d73d0c

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for matcher_py-0.7.1-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 1939ff5f1a86cbd49716cb6f7cfb2f1b6532020c285c465da63ae587229fe8ba
MD5 e6f1a1fb4cb38e9d4bf450255bc05b5f
BLAKE2b-256 df4fbb546caeda7982b02aca0c1aa68094034d5c67457ab112177c3e1a3271de

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for matcher_py-0.7.1-cp312-cp312-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 078af86799c7cacdf1ceaa4ecd4253869c8b036187ef3ef16d23818dad1ee278
MD5 b73e3419737800253deddfe08a30de24
BLAKE2b-256 a295b8856743b431fa26219a4f48c5c880db4f7814c249059e987b9faff57fe5

See more details on using hashes here.

File details

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

File metadata

  • Download URL: matcher_py-0.7.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.11

File hashes

Hashes for matcher_py-0.7.1-cp311-cp311-win_amd64.whl
Algorithm Hash digest
SHA256 e1155f12c8f4f279f0937dde9427d8103160b39a00de34585169e0198ce11624
MD5 85c014943e5643b6b41dafb8ac1eb96d
BLAKE2b-256 a007e9187255ee6e0b07d09c9c143a8dd0728c30863e1f7f2cc22e5823521306

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for matcher_py-0.7.1-cp311-cp311-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 471e85e5a339d8bb8c9b5f2a2c5249b88e34d2f4c5cf18b938808c057c55292b
MD5 1fa308e624f9cc23578b111d211818fe
BLAKE2b-256 efe56bffad9f932f153b160eed81800e680301664b7c8d94d43b63bbe1100c85

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for matcher_py-0.7.1-cp311-cp311-musllinux_1_2_aarch64.whl
Algorithm Hash digest
SHA256 0bd8069c2db76b56f84bd2d68c5ceccd81799e343c23eb8e7f55caa3cd390623
MD5 5c424965336deaab1d37fc58cc2d30d1
BLAKE2b-256 67fbb976bfd8aeab8be6d3a7683567449795b795e2c689ad36d61aceefe82921

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for matcher_py-0.7.1-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 a97a4f33ddd7ed443081ba8af70ea6835ae6d7d6688e277b0329eab534c7fa5c
MD5 40cc7c2efe9159bc7e83b757cbda7e42
BLAKE2b-256 cd0ecefe98e4af5a9477f2fb826577a1efee7aef4e7dc37dc728cf0007bea3d8

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for matcher_py-0.7.1-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 88ce2e5c2eba703ff2825e03a4f15cba38c9980baa1bf5dbfed8a3864a7ed33c
MD5 cc6d2cfe8a5018dd480078dbab024f48
BLAKE2b-256 8f06e912b05dc383b706a14e0ea92a39b01521b9c27b4aefd421a54ffa361994

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for matcher_py-0.7.1-cp311-cp311-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 da7e66751c8b7ca9623fa4e64512aef2dc5a8ff54cd1898768c7ae11e2f910fd
MD5 ea3c49315e6031c1ab4b0a30c16dc557
BLAKE2b-256 b62a6f51bf76ebf52cf75585c7cdb323cf74292984450ea5bcc2303d51f5831c

See more details on using hashes here.

File details

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

File metadata

  • Download URL: matcher_py-0.7.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.11

File hashes

Hashes for matcher_py-0.7.1-cp310-cp310-win_amd64.whl
Algorithm Hash digest
SHA256 d7eb3b63e8235590dc26905f503bd2372144aac4ed460d0495ba12bb29fe831e
MD5 e0c6279d07e8180df1485baa55c05ef8
BLAKE2b-256 d4598c5be402e2d67e0de576ed2c61cc25e868be38711c0bf7b5197e4385d686

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for matcher_py-0.7.1-cp310-cp310-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 bd20614dd9213ef02793e2362e6e395391bdda02093d36f87a095b9d3bdfc7ad
MD5 8eb4cd34254684ef863f1fece0d2d128
BLAKE2b-256 c07f6b974c3cbff09179dac2d115b4f7ee29dccd20a053dcc222e0a071af8846

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for matcher_py-0.7.1-cp310-cp310-musllinux_1_2_aarch64.whl
Algorithm Hash digest
SHA256 e594eefaca5820bdc364fc0b574529adbb4717b948c215e0e16bf4dc6abefc45
MD5 e1900f874ee877d733fe6a94abf815c5
BLAKE2b-256 c883ae08e934dcd3bab11ee66ccdeb590e822ba7641d6e918e85cd9dd3e17252

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for matcher_py-0.7.1-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 a8f4f6c9d719c1cb957c3b0c8eec6c19d38722827ec7a4137dad70891a960984
MD5 e9a6f426ef657b3824874d5062c9955a
BLAKE2b-256 2d9a48c49d03e12794079da773efd36e133b009a4b0781e855fa4e157e698a99

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for matcher_py-0.7.1-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 2678b1970b4d4397f262026c6a5bb3afe86a2952b27c81bea770cfdca237ee4b
MD5 f3114d4d40e2be7a5e74e092eeca6e19
BLAKE2b-256 fafc7c963d3b47fe438cfcb844a5026db255a7cb08619e92cfaabe6e1e4a5d16

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for matcher_py-0.7.1-cp310-cp310-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 de832ab9d7ceaf8182dfe467aab99d4e21b3773c75418ef0eb2ce05b43d5dfdc
MD5 0af86fc4e1f85900857dde7fd489ad9a
BLAKE2b-256 17e8c789a1732ae96c123a4a74ca82443d8f93246dba23fa2bd6278c09ac2017

See more details on using hashes here.

File details

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

File metadata

  • Download URL: matcher_py-0.7.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.11

File hashes

Hashes for matcher_py-0.7.1-cp39-cp39-win_amd64.whl
Algorithm Hash digest
SHA256 9ea6b7ce0ab2e581d4bfb97ea80c96b6330fa2513e02567d145400df74331eb7
MD5 08d436b2b08e396004c43c42ae6f8f7e
BLAKE2b-256 966c685025ab862cf8079479776af7d69120fb897a288c75848344351aa79e14

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for matcher_py-0.7.1-cp39-cp39-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 0dbaa6f8ebc43cadeea852a1cc1ee08922bc77b827a341fedd35ea568d30e46e
MD5 59868287c0ea28bc7cea4f86d3d11930
BLAKE2b-256 77811d24476eb21229aa2fffbe616cd78a98631a5c684d89867e858df5e8f6f4

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for matcher_py-0.7.1-cp39-cp39-musllinux_1_2_aarch64.whl
Algorithm Hash digest
SHA256 f2fc512c61b5c7bf81dd559db7f42727bea61a000f5a67af809eff545d05ea54
MD5 d4792c13b85cd308961da4c2ebcbd7b6
BLAKE2b-256 86685ac0c59b83cf6e795294f0200b1f9e3e90d9629b285f9fd6f0cae8ed997a

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for matcher_py-0.7.1-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 749696df7ed9356a041251e4b9b0457ea46ee7c5b35b849168af505f15b23858
MD5 4279c5de926a89440e4420ce05d4324a
BLAKE2b-256 7d912fe923b1ce5b1184cf988e3dd50909ba6d778beac1c78419f3a21c09e60b

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for matcher_py-0.7.1-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 9d2217eff341c14c593d047f777f12a56837433317da727cefa868ed1946d0a8
MD5 9575f306b00edab96db0609251bd6116
BLAKE2b-256 e2f508723edb26704df57d542ea6d762e6c28db704b215b71cffdc10c233abf0

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for matcher_py-0.7.1-cp39-cp39-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 8399ab62b275cde6fd3566a3f02e2f8945357ee805e5b9cd162e53ef39bbc99f
MD5 2d0201888a550cd94eeaa51c96424599
BLAKE2b-256 fd99bcb4283c45c5eca2cfeaab93e595b1fe71f05243d97dff6ec845ba414d25

See more details on using hashes here.

File details

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

File metadata

  • Download URL: matcher_py-0.7.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.11

File hashes

Hashes for matcher_py-0.7.1-cp38-cp38-win_amd64.whl
Algorithm Hash digest
SHA256 a10274f094cfd36ce7eee0ab0d136a4c4b4309a05414fd39131e7401255afd93
MD5 3f0f4f11dcabc46c4f0edaac233a036e
BLAKE2b-256 5087bb6fb48587dc69db06c5d35bb9adc5a214740eb977adc0584f8e27b72fe7

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for matcher_py-0.7.1-cp38-cp38-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 43170069e413819d0fa5f1ca23816cf52c3bb0662f9187de2db5d326bd6908b9
MD5 4ab6d7713b1ddbb4999c35ad163bbcec
BLAKE2b-256 3601a83ae33f1ffd3d3567a8b2232c3382166827d38293e5f7e91ab4b65a0eaf

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for matcher_py-0.7.1-cp38-cp38-musllinux_1_2_aarch64.whl
Algorithm Hash digest
SHA256 afa7ed4b708a6fd116b8f9620033502dcc88e68851f0e9ec9a22a72978267276
MD5 97dee4267e0433723892ab6bc4b5db8f
BLAKE2b-256 352be8ff4c563e0ca96d2dfc93acdf4fc69e21d6bc0960ebc9f636ee9fbe3599

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for matcher_py-0.7.1-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 b006ecf5b41b87ee34814b2a0ba91132146bcc13acdf6774e6dd4ccefaea908c
MD5 4e3b7675b58afcf313d6bdeffa58fd4c
BLAKE2b-256 8cec1e6872d8f806ad139a395b1e358f858758d8c4f250ece35a384c7c8b2e05

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for matcher_py-0.7.1-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 f23a36ee1a8ceac1d0a3d7042d116c8e003f7cd37988b0df07e1714583e81d34
MD5 20f76938cb61a4ca23a60072e1317ddd
BLAKE2b-256 b54fed090ac2ff7f183ef34eaed71c275a46fac1c68f55d529fb9da9b658eb8d

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for matcher_py-0.7.1-cp38-cp38-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 3eaa8401d71a915894d8e22c01db3e2ce04dab72c622dd52f281447cbf0305fb
MD5 933530bd488a205c6af945bcbccbc95c
BLAKE2b-256 3f5b92e8efd0940ea089dbd16e0f5eaf133e25f80c4605df4f92b94ce3ebd71d

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