preg_match_all('/\{%(([a-zA-Z0-9-_,]+)(=([^\}]+)){0,1})*%\}/', $code, $matches);
//* DEBUG: */ print('<pre>'.print_r($matches, true).'</pre>');
preg_match_all('/\{%(([a-zA-Z0-9-_,]+)(=([^\}]+)){0,1})*%\}/', $code, $matches);
//* DEBUG: */ print('<pre>'.print_r($matches, true).'</pre>');