Some regex engines/dialects also allow pre-defined named subroutines (variables) with `(?(DEFINE) (?<name>pattern)...)` http://www.rexegg.com/regex-disambiguation.html#define, but it's a very niche feature. e.g. https://gist.github.com/moreati/9d974e5395829d737dc342715f15...