L'ho dovuto fare una volta e ricordo di aver fatto così:

preg_match("/\"mailto.*)\"/", $site, $matches);
print_r($matches);

E funzionava. Non capisco il motivo di tutti questi controlli.