通过添加量词和as使您的匹配不贪心:?
+
*
$str = preg_replace("/\<a.+?href=\"mailto:(.*?)\".+?\<\/a\>/", "$1", $str);
此外,您不需要转义<
,>
并且由于模式中有一些/
最好使用不同的分隔符,并且由于您没有在模式内进行任何变量插值,因此无需以"
这种方式将其括起来,您可以避免"
在图案:
$str = preg_replace('#<a.+?href="mailto:(.*?)".+?</a>#', "$1", $str);