mvzr: Minimum Viable Zig Regex
The mvzr library is a Minimum Viable Regex implementation for the Zig programming language. It allows for runtime regex compilation and matching, featuring a simple bytecode-based virtual machine. The library supports various regex operations and character sets while maintaining a lightweight codebase with no external dependencies.
- ▪mvzr is designed for Zig projects requiring runtime regex compilation.
- ▪The library includes 64 operations and 8 unique ASCII character sets.
- ▪It is compatible with Zig versions 0.15.2 and 0.16, with minimal multibyte and Unicode support.
Opening excerpt (first ~120 words) tap to expand
mvzr: The Minimum Viable Zig Regex Library Finding myself in need of a regular expressions library for a Zig project, and needing it to build regex at runtime, not just comptime, I ended up speedrunning a little library for just that purpose. This is that library. It's a simple bytecode-based VM, inspired by LPEG. Under 2000 lines of load-bearing code, no dependencies other than std. The provided Regex type allows 64 'operations' and 8 unique ASCII character sets. If you would like more, or less, you can call SizedRegex(num_ops, num_sets) to customize the type.
…
Excerpt limited to ~120 words for fair-use compliance. The full article is at GitHub.