--- reg +++ reg @@ -53,4 +53,7 @@ (?: <.begin_object> (?: (?: <[member]> (?: (?: <.value_separator><[member]> ) )* ) )? <.end_object> ) + (?{ + $MATCH = { map { @$_ } @{$MATCH{member}} }; + })