Skip to content

robertroessler/rglob

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

21 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

RGlob

Build status

The RGlob (rglob) project provides a simple pattern-matcher supporting patterns constructed in the familiar "glob" style - but separated from any of the file or folder matching operations - JUST the patterns.

It is written in fairly idiomatic modern C++ 20, and in addition to the main pattern compiling/matching functionality, also includes a few "helper" functions for working with UTF-8 -encoded Unicode text - and a template "adaptor" class that augments both std::string iterators and "bare" const char* text pointers to enable natural processing of UTF-8 textual data.

Note that the new version of rglob has been re-implemented as a C++ "header-only library", so that to be used, you only need to reference / include the "rglob.h" file... to re-iterate, rglob is no longer a traditional [binary artifact] "library", static or otherwise.

The primary "user" (as well as "developer") documentation for rglob is present in the rglob.h header file, while examples and a test harness are provided in "t0.cpp".

Besides being "pure" C++, the code is believed to be both 32/64 -bit "safe", and to contain no dependencies (overtly or lurking) on Windows.

ToDo

Possible items to work on - for myself or collaborators include

  • additional (and properly laid out) test cases, both to serve as actual tests and to show examples of usage... DONE!

  • compiling character classes as "subroutines" - this could provide significant space savings in more complex/repetitive patterns

ProbablyNot

Things that most likely should NOT happen include

  • any attempt to "extend" rglob so that it supports a more powerful "pattern language" - globs are globs, and if your needs are for something more like real regular expressions... then use real regular expressions

About

Complete "glob"-style pattern matching over [UTF-8 encoded] Unicode.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages