<img src="/uploads/tx/20120721/500a3b200a63f.jpg" />                                                            <img src="/uploads/tx/20120721/500a3b18841eb.jpg" />                                                            <img src="/uploads/tx/20120721/500a3b193b9f9.jpg" />       
 
上面一段这种代码。。我需要把          /uploads/tx/20120721/500a3b193b9f9.jpg|||/uploads/tx/20120721/500a3b193b9f9.jpg|||/uploads/tx/20120721/500a3b193b9f9.jpg       
 
用这个替换要怎么写啊 我要把图片地址提取出来用|||隔开

解决方案 »

  1.   

    preg_match_all('/<img [^>]*src[\s\r\n]*=[\s\r\n]*"([^">]+)"[^>]*>/i', $str, $matches);echo @implode('|||', $matches[1]);
      

  2.   

    那如何把/uploads/tx/20120721/500a3b193b9f9.jpg|||/uploads/tx/20120721/500a3b193b9f9.jpg|||/uploads/tx/20120721/500a3b193b9f9.jpg   这个输出来的存到一个变量里。而不是一个数组里呢
      

  3.   

    代码我就照抄了,如果满意分数给1楼$str = '<img src="/uploads/tx/20120721/500a3b200a63f.jpg" /> <img src="/uploads/tx/20120721/500a3b18841eb.jpg" /> <img src="/uploads/tx/20120721/500a3b193b9f9.jpg" />';
    preg_match_all('/<img [^>]*src[\s\r\n]*=[\s\r\n]*"([^">]+)"[^>]*>/i', $str, $matches);$matchText = implode('|||', $matches[1]);
    echo $matchText;
      

  4.   

    谢谢上面两位高手。我按上面的方法不行,可能是这个 preg_match_all在我的这段代码里实现不了。我想问一下如果一定要用preg_replace 实现替换的话,要怎么写呢。就是把<img src=" 这个替换成空格
    " />  这个替换成|||并且不能留有空格。
    要像这样的/uploads/tx/20120721/500a3b193b9f9.jpg|||/uploads/tx/20120721/500a3b193b9f9.jpg|||/uploads/tx/20120721/500a3b193b9f9.jpg 
    希望有人可以帮忙一下。正则不是太懂
      

  5.   

    就是把<img src=" 这个替换成空格
    ...
    并且不能留有空格。
    这里矛盾了吧?是替换成空吧$str = '<img src="/uploads/tx/20120721/500a3b200a63f.jpg" /> <img src="/uploads/tx/20120721/500a3b18841eb.jpg" /> <img src="/uploads/tx/20120721/500a3b193b9f9.jpg" />';
    $str = preg_replace('/\s*<img src="(.*)"\s\/>/isU', '$1|||', $str);
    echo $str;
    /uploads/tx/20120721/500a3b200a63f.jpg|||/uploads/tx/20120721/500a3b18841eb.jpg|||/uploads/tx/20120721/500a3b193b9f9.jpg|||
      

  6.   

    $s =<<< TXT
    <img src="/uploads/tx/20120721/500a3b200a63f.jpg" /> <img src="/uploads/tx/20120721/500a3b18841eb.jpg" /> <img src="/uploads/tx/20120721/500a3b193b9f9.jpg" />   
    TXT;echo preg_replace(array('/<img src="/', '/" \/>/'), array('', '|||'), $s);/uploads/tx/20120721/500a3b200a63f.jpg||| /uploads/tx/20120721/500a3b18841eb.jpg||| /uploads/tx/20120721/500a3b193b9f9.jpg|||