A full featured non-backtracking regex engine in C#
This is a flexible regular expression engine with code generation and 3 different styles of runtime evaluation (NFA, DFA, DFA State Table)
It supports streaming, tokenization (lexing) and matching (find), plus many POSIX character classes
It can also render state graphs using GraphViz (http://www.graphviz.org)
It includes an abstract syntax tree/DOM for manipulating expressions
The source code is heavily partitioned and commented for easy perusal and navigation
There's an entire associated article on building it at Code Project
Please visit the following for much more information https://www.codeproject.com/Articles/5251476/How-to-Build-a-Regex-Engine-in-Csharp#_articleTop