Feature: Recursion
Home | Features | Improve this section
A Recursive Expression provides a mechanism for re-evaluating a capture group inside of itself, to handle cases such as matching balanced parenthesis or brackets, etc.
Syntax
NOTE: The following syntax is an example based on some of the supported engines. For specific engine support, see Engines.
(?R)— Reevaluates the entire pattern starting at the current position.(?0)— Reevaluates the entire pattern starting at the current position.
Engines
| Engine | Supported | 
|---|---|
| Perl | ✔ | 
| PCRE | ✔ | 
| Boost.Regex | ✔ | 
| .NET | ✔ | 
| Oniguruma | ✔ | 
| Hyperscan | ❌ | 
| ICU | ❌ | 
| Glib/GRegex | ✔ | 
| ECMAScript | ❌ |