Skip to main content

Library for string matching with glob patterns

Project description

Globber

Globber is a Python library for matching file names against glob patterns. In contrast to other glob-matching libraries, it matches arbitrary strings and doesn't require the matched names to be existing files. In addition, it supports the globstar ** operator to match an arbitrary number of path components.

I have been working with Git repositories, specifically trying to process files classified as source. Picking the source files is much easier with globstar expressions, and since old files might no longer exist on the file system, the matching cannot be based on actual files. I couldn't find anything that had support for both, so I wrote this library.

Patterns

The syntax of a pattern is a sequence of components, separated by slashes /. Each component may include the following special characters:

Character Meaning
? Match any single character (not a path separator)
* Match any sequence of characters, possibly empty (except path separators)
** Must appear alone inside a component. Match any sequence of components, possibly empty
\ Match the following character literally. This is intended to escape the special characters

Contributing

I may occasionally keep working on this library if I have a need for new functionality, but for the moment it is good enough for my current needs. If you're using it, and find bugs or want some new functionality, you're welcome to open an issue. Pull requests are also appreciated but not necessary to get your concerns heard.

License

Globber is licensed under the Apache Software License, version 2.0. See the LICENSE file for precise license terms and conditions.

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

globber-0.2.0.tar.gz (3.3 kB view hashes)

Uploaded Source

Built Distribution

globber-0.2.0-py3-none-any.whl (7.9 kB view hashes)

Uploaded Python 3

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