Index: wp-includes/rewrite.php
===================================================================
--- wp-includes/rewrite.php	(revision 18990)
+++ wp-includes/rewrite.php	(working copy)
@@ -314,9 +314,9 @@
 
 		if ( preg_match("!^$match!", $request_match, $matches) ) {
 
-			if ( $wp_rewrite->use_verbose_page_rules && preg_match( '/pagename=\$([^&\[]+)\[([0-9]+)\]/', $query, $varmatch ) ) {
+			if ( $wp_rewrite->use_verbose_page_rules && preg_match( '/pagename=\$matches\[([0-9]+)\]/', $query, $varmatch ) ) {
 				// this is a verbose page match, lets check to be sure about it
-				if ( ! get_page_by_path( ${$varmatch[1]}[$varmatch[2]] ) )
+				if ( ! get_page_by_path( $matches[ $varmatch[1] ] ) )
 					continue;
 			}
 
Index: wp-includes/class-wp.php
===================================================================
--- wp-includes/class-wp.php	(revision 18990)
+++ wp-includes/class-wp.php	(working copy)
@@ -201,9 +201,9 @@
 					if ( preg_match("#^$match#", $request_match, $matches) ||
 						preg_match("#^$match#", urldecode($request_match), $matches) ) {
 
-						if ( $wp_rewrite->use_verbose_page_rules && preg_match( '/pagename=\$([^&\[]+)\[([0-9]+)\]/', $query, $varmatch ) ) {
+						if ( $wp_rewrite->use_verbose_page_rules && preg_match( '/pagename=\$matches\[([0-9]+)\]/', $query, $varmatch ) ) {
 							// this is a verbose page match, lets check to be sure about it
-							if ( ! get_page_by_path( ${$varmatch[1]}[$varmatch[2]] ) )
+							if ( ! get_page_by_path( $matches[ $varmatch[1] ] ) )
 						 		continue;
 						}
 
