Skip to content

Simple string matching with single- and multiple-wildcard operator

License

Notifications You must be signed in to change notification settings

pufmat/wildmatch

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

wildmatch

build status docs downloads crate license codecov

Match strings against a simple wildcard pattern. Tests a wildcard pattern p against an input string s. Returns true only when p matches the entirety of s.

See also the example described on wikipedia for matching wildcards.

  • ? matches exactly one occurrence of any character.
  • * matches arbitrary many (including zero) occurrences of any character.
  • No escape characters are defined.

Can also be used with a custom match pattern to define own wildcard patterns for single and multi-character matching.

For example the pattern ca? will match cat or car. The pattern https://* will match all https urls, such as https://google.de or https://github.com/becheran/wildmatch.

The following table shows a performance benchmarks between wildmatch, regex,glob, and the regex_lite libraries:

Benchmark wildmatch regex glob regex_lite
compiling/text 462 ns 39,714 ns 1,470 ns 13,210 ns
compiling/complex 190 ns 153,830 ns 238 ns 60 ns
matching/text 497 ns 4,065 ns 456 ns 6,097 ns
matching/complex 675 ns 16,085 ns 1,426 ns 3,773 ns

The library only depends on the rust stdlib.

See the documentation for usage and more examples.

About

Simple string matching with single- and multiple-wildcard operator

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • Rust 100.0%