Skip to main content

Search a string for multiple substrings at once

Project description

ahocorasick_rs: Quickly search for multiple substrings at once

ahocorasick_rs allows you to search for multiple substrings ("patterns") in a given string ("haystack") using variations of the Aho-Corasick algorithm.

In particular, it's implemented as a wrapper of the Rust aho-corasick library, and provides a faster alternative to the pyahocorasick library.

The specific use case is searching for large numbers of patterns (in the thousands) where the Rust library's DFA-based state machine allows for faster matching.

Found any problems or have any questions? File an issue on the GitHub project.

Quickstart

The ahocorasick_rs library allows you to search for multiple strings ("patterns") within a haystack. For example, let's install the library:

$ pip install ahocorasick-rs

Then, we can construct a AhoCorasick object:

>>> import ahocorasick_rs
>>> patterns = ["hello", "world", "fish"]
>>> haystack = "this is my first hello world. hello!"
>>> ac = ahocorasick_rs.AhoCorasick(patterns)

AhoCorasick.find_matches_as_indexes() returns a list of tuples, each tuple being:

  1. The index of the found pattern inside the list of patterns.
  2. The start index of the pattern inside the haystack.
  3. The end index of the pattern inside the haystack.
>>> ac.find_matches_as_indexes(haystack)
[(0, 17, 22), (1, 23, 28), (0, 30, 35)]
>>> patterns[0], patterns[1], patterns[0]
('hello', 'world', 'hello')
>>> haystack[17:22], haystack[23:28], haystack[30:35]
('hello', 'world', 'hello')

find_matches_as_strings() returns a list of found patterns:

>>> ac.find_matches_as_strings(haystack)
['hello', 'world', 'hello']

Additional configuration

Match kind

There are three ways you can configure matching in cases where multiple patterns overlap. For a more in-depth explanation, see the underlying Rust library's documentation of matching.

Assume we have this starting point:

>>> from ahocorasick_rs import *

MATCHKIND_STANDARD (the default)

This returns the pattern that matches first, semantically-speaking. This is the default matching pattern.

>>> ac AhoCorasick(["disco", "disc", "discontent"])
>>> ac.find_matches_as_strings("discontent")
['disc']
>>> ac = AhoCorasick(["b", "abcd"])
>>> ac.find_matches_as_strings("abcdef")
['b']

In this case disc will match before disco or discontent.

Similarly, b will match before abcd because it ends earlier in the haystack than abcd does:

>>> ac = AhoCorasick(["b", "abcd"])
>>> ac.find_matches_as_strings("abcdef")
['b']

MATCHKIND_LEFTMOST_FIRST

This returns the leftmost-in-the-haystack matching pattern that appears first in the list of given patterns. That means the order of patterns makes a difference:

>>> ac = AhoCorasick(["disco", "disc"], matchkind=MATCHKIND_LEFTMOST_FIRST)
>>> ac.find_matches_as_strings("discontent")
['disco']
>>> ac = AhoCorasick(["disc", "disco"], matchkind=MATCHKIND_LEFTMOST_FIRST)
['disc']

Here we see abcd matched first, because it starts before b:

>>> ac = AhoCorasick(["b", "abcd"], matchkind=MATCHKIND_LEFTMOST_FIRST)
>>> ac.find_matches_as_strings("abcdef")
['abcd']
MATCHKIND_LEFTMOST_LONGEST

This returns the leftmost-in-the-haystack matching pattern that is longest:

>>> ac = AhoCorasick(["disco", "disc", "discontent"], matchkind=MATCHKIND_LEFTMOST_LONGEST)
>>> ac.find_matches_as_strings("discontent")
['discontent']

Overlapping matches

You can get all overlapping matches, instead of just one of them, but only if you stick to the default matchkind, MATCHKIND_STANDARD:

>>> from ahocorasick_rs import AhoCorasick
>>> patterns = ["winter", "onte", "disco", "discontent"]
>>> ac = AhoCorasick(patterns)
>>> ac.find_matches_as_strings("discontent", overlapping=True)
['disco', 'onte', 'discontent']

Implementation details

  • The underlying Rust library supports two implementations, one oriented towards reducing memory usage and construction time (NFA), the latter towards faster matching (DFA). The Python wrapper only exposes the DFA version, since expensive setup compensated by fast batch operations is the standard Python tradeoff.
  • Matching releases the GIL, to enable concurrency.
  • Not all features from the underlying library are exposed; if you would like additional features, please file an issue or submit a PR.

Benchmarks

As with any benchmark, real-world results will differ based on your particular situation. If performance is important to your application, measure the alternatives yourself!

Longer strings and many patterns

This benchmark matches ~4,000 patterns against lines of text that are ~700 characters long. Each line matches either zero (90%) or one pattern (10%).

Higher is better; ahocorasick_rs is much faster in both cases.

find_matches_as_strings or equivalent Operations per second
ahocorasick_rs longest matching 436,000
pyahocorasick longest matching 65,000
ahocorasick_rs overlapping matching 329,000
pyahocorasick overlapping matching 76,000

Shorter strings and few patterns

This benchmarks matches ~10 patterns against lines of text that are ~70 characters long. Each line matches ~5 patterns.

Higher is better; again, ahocorasick_rs is faster for both, though with a smaller margin.

find_matches_as_strings or equivalent Operations per second
ahocorasick_rs longest matching 1,930,000
pyahocorasick longest matching 1,120,000
ahocorasick_rs overlapping matching 1,250,000
pyahocorasick overlapping matching 880,000

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

ahocorasick_rs-0.12.3.tar.gz (58.9 kB view details)

Uploaded Source

Built Distributions

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

ahocorasick_rs-0.12.3-cp311-none-win_amd64.whl (192.7 kB view details)

Uploaded CPython 3.11Windows x86-64

ahocorasick_rs-0.12.3-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (616.7 kB view details)

Uploaded CPython 3.11manylinux: glibc 2.17+ x86-64

ahocorasick_rs-0.12.3-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (585.4 kB view details)

Uploaded CPython 3.11manylinux: glibc 2.17+ ARM64

ahocorasick_rs-0.12.3-cp311-cp311-macosx_10_9_x86_64.macosx_11_0_arm64.macosx_10_9_universal2.whl (551.7 kB view details)

Uploaded CPython 3.11macOS 10.9+ universal2 (ARM64, x86-64)macOS 10.9+ x86-64macOS 11.0+ ARM64

ahocorasick_rs-0.12.3-cp311-cp311-macosx_10_7_x86_64.whl (289.9 kB view details)

Uploaded CPython 3.11macOS 10.7+ x86-64

ahocorasick_rs-0.12.3-cp310-none-win_amd64.whl (192.7 kB view details)

Uploaded CPython 3.10Windows x86-64

ahocorasick_rs-0.12.3-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (616.7 kB view details)

Uploaded CPython 3.10manylinux: glibc 2.17+ x86-64

ahocorasick_rs-0.12.3-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (585.4 kB view details)

Uploaded CPython 3.10manylinux: glibc 2.17+ ARM64

ahocorasick_rs-0.12.3-cp310-cp310-macosx_10_9_x86_64.macosx_11_0_arm64.macosx_10_9_universal2.whl (551.7 kB view details)

Uploaded CPython 3.10macOS 10.9+ universal2 (ARM64, x86-64)macOS 10.9+ x86-64macOS 11.0+ ARM64

ahocorasick_rs-0.12.3-cp310-cp310-macosx_10_7_x86_64.whl (290.0 kB view details)

Uploaded CPython 3.10macOS 10.7+ x86-64

ahocorasick_rs-0.12.3-cp39-none-win_amd64.whl (193.0 kB view details)

Uploaded CPython 3.9Windows x86-64

ahocorasick_rs-0.12.3-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (616.9 kB view details)

Uploaded CPython 3.9manylinux: glibc 2.17+ x86-64

ahocorasick_rs-0.12.3-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (585.8 kB view details)

Uploaded CPython 3.9manylinux: glibc 2.17+ ARM64

ahocorasick_rs-0.12.3-cp39-cp39-macosx_10_9_x86_64.macosx_11_0_arm64.macosx_10_9_universal2.whl (552.3 kB view details)

Uploaded CPython 3.9macOS 10.9+ universal2 (ARM64, x86-64)macOS 10.9+ x86-64macOS 11.0+ ARM64

ahocorasick_rs-0.12.3-cp39-cp39-macosx_10_7_x86_64.whl (290.3 kB view details)

Uploaded CPython 3.9macOS 10.7+ x86-64

ahocorasick_rs-0.12.3-cp38-none-win_amd64.whl (193.4 kB view details)

Uploaded CPython 3.8Windows x86-64

ahocorasick_rs-0.12.3-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (617.7 kB view details)

Uploaded CPython 3.8manylinux: glibc 2.17+ x86-64

ahocorasick_rs-0.12.3-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (586.5 kB view details)

Uploaded CPython 3.8manylinux: glibc 2.17+ ARM64

ahocorasick_rs-0.12.3-cp38-cp38-macosx_10_7_x86_64.whl (295.5 kB view details)

Uploaded CPython 3.8macOS 10.7+ x86-64

ahocorasick_rs-0.12.3-cp37-none-win_amd64.whl (193.4 kB view details)

Uploaded CPython 3.7Windows x86-64

ahocorasick_rs-0.12.3-cp37-cp37m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (617.6 kB view details)

Uploaded CPython 3.7mmanylinux: glibc 2.17+ x86-64

ahocorasick_rs-0.12.3-cp37-cp37m-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (586.6 kB view details)

Uploaded CPython 3.7mmanylinux: glibc 2.17+ ARM64

ahocorasick_rs-0.12.3-cp37-cp37m-macosx_10_7_x86_64.whl (295.5 kB view details)

Uploaded CPython 3.7mmacOS 10.7+ x86-64

File details

Details for the file ahocorasick_rs-0.12.3.tar.gz.

File metadata

  • Download URL: ahocorasick_rs-0.12.3.tar.gz
  • Upload date:
  • Size: 58.9 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.1 CPython/3.10.6

File hashes

Hashes for ahocorasick_rs-0.12.3.tar.gz
Algorithm Hash digest
SHA256 5d6ab483be8ee8bf885c183c381fe4223e9767ef420917448ba1cc460cf1a240
MD5 7db88ca52f0ed3b91666b4d9b304d125
BLAKE2b-256 1417971a578c3f046dcbf6444535820160c318ad7daf3bfd5b9ea8e2514ef6d5

See more details on using hashes here.

File details

Details for the file ahocorasick_rs-0.12.3-cp311-none-win_amd64.whl.

File metadata

File hashes

Hashes for ahocorasick_rs-0.12.3-cp311-none-win_amd64.whl
Algorithm Hash digest
SHA256 733509125fe716132822b662ec248985289b8dd15868e44418122404ca88ada2
MD5 99bda81358b8da593e4142de573b875b
BLAKE2b-256 d1ac9ad011c6214ea5393e249c462d5d6f6f8aa4390b2b21412ee0e859230a5e

See more details on using hashes here.

File details

Details for the file ahocorasick_rs-0.12.3-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for ahocorasick_rs-0.12.3-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 6436137c0e19b1818f8169a999c77b9b73191f4409591edaba359d43d61fffb3
MD5 bf44c207c25ea2e254d8f0b957363eee
BLAKE2b-256 58b4f0eb2354d2a2b0b802b11f4c39a830cb4f39866abcfb8e7ba6e691a534e3

See more details on using hashes here.

File details

Details for the file ahocorasick_rs-0.12.3-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for ahocorasick_rs-0.12.3-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 607b33bcc516e585eb8f83566e7df6d11f1ac92cbebadeb251122b2444022926
MD5 5450d70b4e096e9a6c3c4a109a592770
BLAKE2b-256 846343da395c0be3fb0657d32010a4fbda3944bc4c66b256c2f3b997bd1ca020

See more details on using hashes here.

File details

Details for the file ahocorasick_rs-0.12.3-cp311-cp311-macosx_10_9_x86_64.macosx_11_0_arm64.macosx_10_9_universal2.whl.

File metadata

File hashes

Hashes for ahocorasick_rs-0.12.3-cp311-cp311-macosx_10_9_x86_64.macosx_11_0_arm64.macosx_10_9_universal2.whl
Algorithm Hash digest
SHA256 bee14110e44fb324e7e786b8e58d1372083b9a2e7555defc5b2e49f703f02193
MD5 95fd4e9a93ecb78570d1e5e6a8996bb8
BLAKE2b-256 03c13c7d3fed3469c97cd3b2cb1ce533fb3c9b194b0c980b9f3d09dd29cc5384

See more details on using hashes here.

File details

Details for the file ahocorasick_rs-0.12.3-cp311-cp311-macosx_10_7_x86_64.whl.

File metadata

File hashes

Hashes for ahocorasick_rs-0.12.3-cp311-cp311-macosx_10_7_x86_64.whl
Algorithm Hash digest
SHA256 ccb571731dd6b5b116e3cf72ef52ff7a7d6e6e260e880c48ff8f8f455e03e428
MD5 76513057e81bd76fc34077c2c1a57d22
BLAKE2b-256 7b9dc7de85f5621562afe481f73f69455a74a93bfb59667eed952f0e8a99d31d

See more details on using hashes here.

File details

Details for the file ahocorasick_rs-0.12.3-cp310-none-win_amd64.whl.

File metadata

File hashes

Hashes for ahocorasick_rs-0.12.3-cp310-none-win_amd64.whl
Algorithm Hash digest
SHA256 78a0fc96597354757e506b7041ab52a60f68ba8e8d732127426bc9026ac65a2c
MD5 f4072659172d11f56e981885b1c3184c
BLAKE2b-256 0d567100c1c48fc662a19ca26def59f45ffedb8d7b4bc1b162b61e4060f6ad25

See more details on using hashes here.

File details

Details for the file ahocorasick_rs-0.12.3-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for ahocorasick_rs-0.12.3-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 4e10f4a600097db97f71006e7f7a35248837676b216890c1e4cd1784afac602e
MD5 791bca645319ad2f49846ef8370f4e3f
BLAKE2b-256 488a5c1cf5887692789ef02b55aaa4534f6f9929c869a43163fdeb07066e961c

See more details on using hashes here.

File details

Details for the file ahocorasick_rs-0.12.3-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for ahocorasick_rs-0.12.3-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 7946fadbae985ce0ea8a9ec5a177d40799e40e2ec342538879736cbb5aff628f
MD5 e89ffde102bdda65880d52a6252c583c
BLAKE2b-256 ed7fc28a1c374fd965e266af31950f1f9dcf8aacb61f48d523ac8ae0794ce37f

See more details on using hashes here.

File details

Details for the file ahocorasick_rs-0.12.3-cp310-cp310-macosx_10_9_x86_64.macosx_11_0_arm64.macosx_10_9_universal2.whl.

File metadata

File hashes

Hashes for ahocorasick_rs-0.12.3-cp310-cp310-macosx_10_9_x86_64.macosx_11_0_arm64.macosx_10_9_universal2.whl
Algorithm Hash digest
SHA256 09506d07667307fc129f6b858efbd63163abb93f68299355762bad5d85d30e95
MD5 da7fa1cf7505e8b69a35e93a8d713001
BLAKE2b-256 ea81c10a61bd38771861594b783d9fe1fab1fb099e903852214240df4ddded63

See more details on using hashes here.

File details

Details for the file ahocorasick_rs-0.12.3-cp310-cp310-macosx_10_7_x86_64.whl.

File metadata

File hashes

Hashes for ahocorasick_rs-0.12.3-cp310-cp310-macosx_10_7_x86_64.whl
Algorithm Hash digest
SHA256 e2bd0d8902ffc74a278f610ae6815327b7d2a92cf51496c9ae7f9d1db7eddb83
MD5 ccfdfe3e6c3789e77fa9b86db446047d
BLAKE2b-256 89054d7ed74778817089bcbfe4caab8a8165f8771d6427c0c50907f7e51fb1a7

See more details on using hashes here.

File details

Details for the file ahocorasick_rs-0.12.3-cp39-none-win_amd64.whl.

File metadata

File hashes

Hashes for ahocorasick_rs-0.12.3-cp39-none-win_amd64.whl
Algorithm Hash digest
SHA256 1cc786c09b0378999f1cfcb73d64f713e2e9a8dc91c951f56e1a562a135ad0f5
MD5 f7e6ad1eca19b52d1d9694ef2af9097d
BLAKE2b-256 465195da6ef18a6000e2f0d1fb601867db367f081f008e3b77b743ed375f6dce

See more details on using hashes here.

File details

Details for the file ahocorasick_rs-0.12.3-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for ahocorasick_rs-0.12.3-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 4188acf4c73c5237b218903936abcf681ab84784da17ca3bdd65128010e425df
MD5 180c73f8fd11d790c9ce3fc6eecbc606
BLAKE2b-256 a274b82a0a8924fb1ba8833dced7e042f1bf1952441ad94966c63ba25945106e

See more details on using hashes here.

File details

Details for the file ahocorasick_rs-0.12.3-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for ahocorasick_rs-0.12.3-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 d4c5a714a5bc706473e6a244e9187e33813a4f9c551eec351cfc2048b5bccb14
MD5 471ecfea3874754f82f5a506d63a4f07
BLAKE2b-256 da65ba5efb56f1f2650e4224827c287f707b21acbae405562e65406016c548af

See more details on using hashes here.

File details

Details for the file ahocorasick_rs-0.12.3-cp39-cp39-macosx_10_9_x86_64.macosx_11_0_arm64.macosx_10_9_universal2.whl.

File metadata

File hashes

Hashes for ahocorasick_rs-0.12.3-cp39-cp39-macosx_10_9_x86_64.macosx_11_0_arm64.macosx_10_9_universal2.whl
Algorithm Hash digest
SHA256 666ebfe658eecf7436c85420fc01ecf36b34b90c6d0f01108aa235a68a7469c0
MD5 b6acc74fd444528eea9b797272bb1168
BLAKE2b-256 1c06ffd36affb849c20981e725c43c39ed54f065163fed6cea5f9a590b465bac

See more details on using hashes here.

File details

Details for the file ahocorasick_rs-0.12.3-cp39-cp39-macosx_10_7_x86_64.whl.

File metadata

File hashes

Hashes for ahocorasick_rs-0.12.3-cp39-cp39-macosx_10_7_x86_64.whl
Algorithm Hash digest
SHA256 e74f9b5f3de261ec12b73a02bb0c768ebf26610b622b039bd9a3285ac292f25d
MD5 2d6f8a1e9860391160d65ee83d93ea93
BLAKE2b-256 29dbb17bc4781192d7307f963b42e861dfddb0c9171942e39b36cdabf7b8aba0

See more details on using hashes here.

File details

Details for the file ahocorasick_rs-0.12.3-cp38-none-win_amd64.whl.

File metadata

File hashes

Hashes for ahocorasick_rs-0.12.3-cp38-none-win_amd64.whl
Algorithm Hash digest
SHA256 a59400382fa059378b7b2532221851362816a7d9b021b61bc0b97827c8ea611d
MD5 c386be230bb3865277914efd9d1f3d23
BLAKE2b-256 c67f0bdc98c466440ca19adfe582bb9d6c172e4f83ca42bfc63bd799bab140bb

See more details on using hashes here.

File details

Details for the file ahocorasick_rs-0.12.3-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for ahocorasick_rs-0.12.3-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 b50d6f27948b74e82258ae4890b4f4180f5e3fd0f106494734a10b166fff86be
MD5 8248a1748f4f06258af461a3caf4ee52
BLAKE2b-256 a198e55e1132c253ded53d6d5298b7f67d31afcdbe1ec2f19dfe13286e1d730c

See more details on using hashes here.

File details

Details for the file ahocorasick_rs-0.12.3-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for ahocorasick_rs-0.12.3-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 c8dd870583bedf7fd13d7af50e346a9180c3671dd461e5970aa61e9c38f07339
MD5 a1ae8c316d3e385c94d15bf6e84d09a3
BLAKE2b-256 3449de48ddc505fd63a8aa6a5748fdcb562f2040c3d143fe8069306adae2219c

See more details on using hashes here.

File details

Details for the file ahocorasick_rs-0.12.3-cp38-cp38-macosx_10_7_x86_64.whl.

File metadata

File hashes

Hashes for ahocorasick_rs-0.12.3-cp38-cp38-macosx_10_7_x86_64.whl
Algorithm Hash digest
SHA256 5638fbcac20c4f77dda84ac25396bace4babaab83e051381738b5a14739c872f
MD5 363ef689bd8dc6d5605a4536d552353b
BLAKE2b-256 a427edff7ba60079185203fb3ae248ab21463ca5357abd277f9c4692ab855ad2

See more details on using hashes here.

File details

Details for the file ahocorasick_rs-0.12.3-cp37-none-win_amd64.whl.

File metadata

File hashes

Hashes for ahocorasick_rs-0.12.3-cp37-none-win_amd64.whl
Algorithm Hash digest
SHA256 70f86d4f9db610e4cbd59b122081ad94b2588044c339e45ade1fed715a3a92e5
MD5 426e2a496eeb0abc3827c1db8439e220
BLAKE2b-256 1bf0e6e28811a83e45ebded869649fee70dc370cd1c8d794688cea8e4e106c62

See more details on using hashes here.

File details

Details for the file ahocorasick_rs-0.12.3-cp37-cp37m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for ahocorasick_rs-0.12.3-cp37-cp37m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 250b04ddfcc20b03d35789f6eb7d001fa916a8e8fc27c6d4936ba0af538bcf58
MD5 5225d7061392a28ae4db293d2ad7bc09
BLAKE2b-256 4ba6af16a6074a94b09dd63c4e06a3b1ea3f4e1ab18c5cdf4dde5acd5a9cbd86

See more details on using hashes here.

File details

Details for the file ahocorasick_rs-0.12.3-cp37-cp37m-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for ahocorasick_rs-0.12.3-cp37-cp37m-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 6316555c2f4adc52560a6676c35fa984c339d165ad9a0dc2262fc62906b2f3c6
MD5 8065db662066bb0543f5a7029781be1b
BLAKE2b-256 a8ce50b45386477ba96d0b5a61bfee017b2b8a12cb1848dc686de0b6123c79dd

See more details on using hashes here.

File details

Details for the file ahocorasick_rs-0.12.3-cp37-cp37m-macosx_10_7_x86_64.whl.

File metadata

File hashes

Hashes for ahocorasick_rs-0.12.3-cp37-cp37m-macosx_10_7_x86_64.whl
Algorithm Hash digest
SHA256 7bb0ee3c6f3f44b6e140e698f6d8b8829a7ab6ee8f996cbc77fc578f89bad95f
MD5 838072d6861340c07af7cc91e3469f15
BLAKE2b-256 96aa8b25c0e3c816b3f9f7067057c170d2282604692cea1750106f1098c8aa4a

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