/JRegexPlus

Regular Expression Engine - Backreferences without backtracking

Primary LanguageJavaGNU General Public License v3.0GPL-3.0

This is a proof of concept Regular Expression engine that handles submatch grouping and backreferences without backtracking. It also supports lookaround with arbitrary regular expressions(including lookbehind with + and *) and reluctant quantifiers.

It handles most of the constructs handled by the java.util.regex engine except for UNICODE characters. 

See http://karthikj1.github.io/JRegexPlus/ for more details.

Atomic grouping and possessive quantifiers are not supported but are not necessary since they are primarily a way to work around issues created by backtracking. Non-capturing groups are not supported since they do not provide a significant performance advantage with this engine's method of operation.

Some flags supported by Java are not yet supported by this engine - only the comment and the UNIX_LINES flags are relevant in the absence of UNICODE support. The default flag setting is UNIX_LINES on.