php正则表达式婚配疑问

php正则表达式匹配疑问。PHP code$data meta http-equivContent-Type contenttext/html charset

php正则表达式匹配疑问。

PHP code
$data = "<meta http-equiv='Content-Type' content='text/html; charset=utf-8'/>aaa/r/naaaaaaaaaaaa"; preg_match_all('/<meta[^>]*charset=([a-zA-Z0-9]*[\-]*[0-9]*)/', $data, $meta);var_dump($meta);

为什么打印出来是:
array
  0 => 
  array
  0 => string '<meta http-equiv='Content-Type' content='text/html; charset=utf-8' (length=64)
  1 => 
  array
  0 => string 'utf-8' (length=4)

第二个匹配到utf-8是怎么匹配的?
不是只能匹配第一个吗?

[解决办法]
探讨
PHP code
$data = "<meta http-equiv='Content-Type' content='text/html; charset=utf-8'/>aaa/r/naaaaaaaaaaaa";

preg_match_all('/<meta[^>]*charset=([a-zA-Z0-9]*[\-]*[0-9]*)/', $data, $meta);
var_dump($……