当前位置:Gxlcms > PHP教程 > preg_match取值有关问题

preg_match取值有关问题

时间:2021-07-01 10:21:17 帮助过:5人阅读

preg_match取值问题
$body= ;

preg_match('/<[img|IMG].+src=[\'|\"]?(.+\.(jpg|gif|bmp|png))[\'|\"]?.+>/i', $body, $match);
这样取得的是最后一个src,不是第一个

$body=
;
图片间加
后就没问题,怎么回事


------解决方案--------------------
问题在于.+,你用了很多贪婪匹配,自然会匹配到最后面的img,可以? U去修饰
------解决方案--------------------
preg_match('/<[img|IMG].+?src=[\'|\"]?([^"]+\.(jpg|gif|bmp|png))[\'|\"]?.+?>/i', $body, $match);

你的范围没限死。.+ 范围太广了。又没有限制贪婪匹配。

人气教程排行