NODE EXPLANATION
--------------------------------------------------------------------------------
( group and capture to \1:
--------------------------------------------------------------------------------
\( '('
--------------------------------------------------------------------------------
( group and capture to \2:
--------------------------------------------------------------------------------
( group and capture to \3 (0 or more
times (matching the most amount
possible)):
--------------------------------------------------------------------------------
%3F%3A '%3F%3A'
--------------------------------------------------------------------------------
( group and capture to \4:
--------------------------------------------------------------------------------
%3F> '%3F>'
--------------------------------------------------------------------------------
[^()] any character except: '(', ')'
--------------------------------------------------------------------------------
%2B '%2B'
--------------------------------------------------------------------------------
) end of \4
--------------------------------------------------------------------------------
| OR
--------------------------------------------------------------------------------
( group and capture to \5:
--------------------------------------------------------------------------------
\1 what was matched by capture \1
--------------------------------------------------------------------------------
) end of \5
--------------------------------------------------------------------------------
)* end of \3 (NOTE: because you are using
a quantifier on this capture, only the
LAST repetition of the captured
pattern will be stored in \3)
--------------------------------------------------------------------------------
) end of \2
--------------------------------------------------------------------------------
\) ')'
--------------------------------------------------------------------------------
) end of \1