Wildcard Match
Overview
Wildcard Match translates the more simple, path-centric syntax of glob patterns to regular expression for the purpose of iterating and matching file systems.
Wildcard Match provides an enhanced fnmatch, glob, and pathlib library in order to provide file matching and
globbing that more closely follows the features found in Bash. In some ways these libraries are similar to Python's
builtin libraries as they provide a similar interface to match, filter, and glob the file system. But they also include
a number of features found in Bash's globbing such as backslash escaping, brace expansion, extended glob pattern groups,
etc. They also add a number of new useful functions as well, such as globmatch which functions like fnmatch, but for
paths.
Wildcard Match also adds a file search utility called wcmatch that is built on top of fnmatch and globmatch. It
was originally written for Rummage, but split out into this project to be
used by other projects that may find its approach useful.
Bash is used as a guide when making decisions on behavior for fnmatch and glob. Behavior may differ from Bash
version to Bash version, but an attempt is made to keep Wildcard Match up with the latest relevant changes. With all of
this said, there may be a few corner cases in which we've intentionally chosen to not exactly mirror Bash. If an issue
is found where Wildcard Match seems to deviate in an illogical way, we'd love to hear about it in the
issue tracker.
Features
A quick overview of Wildcard Match's Features:
- Provides an interface comparable to Python's builtin in
fnmatch,glob, andpathlib. - Allows for a much more configurable experience when matching or globbing with many more features.
- Adds support for
**in glob. - Adds support for Zsh style
***recursive glob for symlinks. - Adds support for escaping characters with
\. - Add support for POSIX style character classes inside sequences:
[[:alnum:]], etc. TheClocale is used. - Adds support for brace expansion:
a{b,{c,d}}-->ab ac ad. - Adds support for expanding
~or~usernameto the appropriate user path. - Adds support for extended match patterns:
@(...),+(...),*(...),?(...), and!(...). - Adds ability to match path names via the path centric
globmatch. - Provides a
pathlibvariant that uses Wildcard Match'sgloblibrary instead of Python's default. - Provides an alternative file crawler called
wcmatch. - And more...
Installation
Installation is easy with pip:
pip install wcmatch
Documentation
https://facelessuser.github.io/wcmatch/
License
MIT
Metadata
Release files for wcmatch 11.2
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | Provenance | Actions |
|---|---|---|---|---|
| wcmatch-11.2.tar.gz | 134.9 kB | With provenance | Details for wcmatch-11.2.tar.gz |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Actions Reset |
|---|---|---|---|---|
| wcmatch-11.2-py3-none-any.whl | Python 3 | none | any | Details for wcmatch-11.2-py3-none-any.whl |
Total release size: 179.3 kB
Release files / wcmatch-11.2.tar.gz
| Download URL | wcmatch-11.2.tar.gz |
|---|---|
| Size | 134.9 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
1605bde546fbde4c063628c7d89eda486909fd4337e51d73a873987fbcb2554c
|
|
BLAKE2b-256 checksum How to use checksums |
bd07b7a9162a804bc0f7d03fe84c93e374d3e1c4d828043d5f9b797f7d4e30e0
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/7.0.0 CPython/3.13.16
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Oct 22, 2026.
Transparency logRelease files / wcmatch-11.2-py3-none-any.whl
| Download URL | wcmatch-11.2-py3-none-any.whl |
|---|---|
| Size | 44.4 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
952bab83c75c233836007a69550a3a8753cf06964c1eb3b84ff11ad5bff1c272
|
|
BLAKE2b-256 checksum How to use checksums |
3496b6cebd4bd75320743a291fed494c79f07c01b58fa9b187d12aeb5110f002
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/7.0.0 CPython/3.13.16
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Oct 22, 2026.
Transparency logSecurity for wcmatch 11.2
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
Full provenance
All 2 files in this release have been uploaded with provenance metadata.
Attestation for wcmatch-11.2.tar.gz
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Oct 22, 2026.
Transparency logA note on package security
PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.
To learn more about protecting yourself from malicious actors, visit our package security documentation.