我想把HTML的所有<img>标签里面的图片的url地址提取出来
html代码如下<img src="showImage.do?name=0000%2F1034%2F1034-1.gif" width="241" height="265"/>
如果后面没有width和height的话,用/<img.*?src=(.*?)>/ 可以提取,但是这里我就不知道应该如何表述了。
望高手指点,小弟不胜感激!

解决方案 »

  1.   

    $html = <<<HTML
    <img src="showImage.do?name=0000%2F1034%2F1034-1.gif" width="241" height="265"/>
    HTML;$patt = "#<img src=(\"|')(.+)(\"|')#iU";
    preg_match_all($patt, $html, $match);
    print_r($match[2]);
      

  2.   

    $html = <<<HTML
    <img src="showImage.do?name=0000%2F1034%2F1034-1.gif" width="241" height="265"/>
    HTML;$patt = "#<img src=(\"|')(.+)(\"|')#iU";
    preg_match_all($patt, $html, $match);
    print_r($match[2]);
      

  3.   


    $s='<img src="showImage.do?name=0000%2F1034%2F1034-1.gif" width="241" height="265"/>';
    preg_match_all('/<img[^>]+src="(.*)"[^>]*>/iU',$s,$arr);
    print_r($arr[1]);
      

  4.   

    //3楼答案提醒我写的这个不太严谨,修改一下:
    $patt = "#<img[^>]+src=(\"|')(.+)(\"|')#iU";