RE/flex regex tools
The regex-centric, fast and flexible scanner generator for C++
RE/flex is a modern powerful alternative to the popular Flex scanner generator tool. RE/flex accepts more expressive lexer specifications with Unicode patterns, indent/nodent/dedent anchors, lazy quantifiers, word boundaries and many other enhancements over the Flex lexical analyzer generator. RE/flex generates clean source code lexer classes that are thread-safe. RE/flex accepts Flex specifications and is compatible with Bison (Yacc). RE/flex also offers an extremely fast regex library for C++.
"The asteroid to kill this dinosaur is still in orbit." -- Lex Manual
"Optimize: this currently has no effect in Boost.Regex." -- Boost Manual
"Reflex: a thing that is determined by and reproduces the essential features or qualities of something else." -- Oxford Dictionary
RE/flex is the regex-centric, fast and flexible lexical analyzer generator for C++. In a nutshell, RE/flex offers the following:
➤ a regex-centric, Flex-compatible scanner generator for C++;
➤ a feature-rich replacement of the Flex and Lex tools;
➤ a regex library for fast POSIX regular expression matching with extensions to POSIX such as lazy quantifiers, word boundary anchors, Unicode UTF-8, and much more;
➤ an enhancement of Boost.Regex;
➤ a flexible regex library that combines the above in a collection of C++ class templates for pattern matching, searching, scanning, and splitting of strings, files, and streaming data.
See the RE/flex documentation GitHub repo and SourceForge download.
RE/flex is released in free open source and licensed under the BSD-3.