trex is a tiny regex library with UTF-8 support.
Usage is simple:
if (regexmatch("^\\\\fcharset\\d+ ?$", rtfcommand)) {
/* set the character set for the current font definition */
}- Public domain
- UTF-8 aware and locale aware
- Small source code size (< 100 SLOC)
- Small binary size (~3.5kb on macOS, ~4kb on Linux)
- No dynamic memory allocation
- Supports standard metacharacter classes
\d,\s, and\w - Easy to add additional metacharacter classes (e.g., supports
\xfor hexadecimal digits out of the box)
- No character sets, e.g.,
[0-9] - No character groups or alternates, e.g.,
(abc|def) - No quantifiers, e.g.,
\d{1,5} - No support for index or match length (return value only indicates whether there's a match)
- Locale support relies on system library iswxxxxx functions