本帖最后由 liao3bafa 于 2014-10-10 13:34:29 编辑 我需要取出以http开头的所有图片的地址,写了这个正则
$regstr = 'http://.*(\.jpg|\.png|\.gif)'
使用函数匹配 preg_match_all($regstr, $strtest2, $match);对 strtest2这个字符串能顺利取出图片的地址,但对于strtest1这样的字符串却无法取出,请大家帮我看看问题出在哪儿,感谢
$strtest1 = 'e7342287f1485896249c474049d53https://www.gxlcms.com/17c:1:0:|http://img01.taobaocdn.com/bao/uploaded/i1/T1dNrmFEJaXXXXXXXX_!!0-item_pic.jpg;78e4591d5b18775a71912801623c0d26:1:1:|http://img01.taobaocdn.com/bao/uploaded/i1/1643666761/TB2aMrfaFXXXXbGXpXXXXXXXXXX_!!1643666761.jpg;';
$strtest2 = '
';------解决思路----------------------
用下面这种吧
$strtest1 = 'e7342287f1485896249c474049d53https://www.gxlcms.com/17c:1:0:
------解决思路----------------------
http://img01.taobaocdn.com/bao/uploaded/i1/T1dNrmFEJaXXXXXXXX_!!0-item_pic.jpg;78e4591d5b18775a71912801623c0d26:1:1:
------解决思路----------------------
http://img01.taobaocdn.com/bao/uploaded/i1/1643666761/TB2aMrfaFXXXXbGXpXXXXXXXXXX_!!1643666761.jpg;';
$strtest2 = '------解决思路----------------------
rel="tag">';
$regstr = '/http:\/\/img.*(?:\.jpg
------解决思路----------------------
\.png
------解决思路----------------------
\.gif)/U';
preg_match_all($regstr, $strtest1, $match);
var_dump($match);
preg_match_all($regstr, $strtest2, $match);
var_dump($match);
?>
';