<a href="http://ygtc.tmall.com//search.htm?userId=&amp;shopId=57299517&amp;view_type=&amp;order_type=&amp;spm=0&amp;search=y&amp;keyword=%BA%A3%BB%EA%C9%C0&amp;price1=&amp;price2=" target="_blank"><img src="http://a.tbcdn.cn/kissy/1.0.0/build/imglazyload/spaceball.gif" src2="http://img01.taobaocdn.com/imgextra/i1/91615835/T2SFNZXdldXXXXXXXX_!!91615835.jpg_q75.jpg" data-ks-lazyload="http://img01.taobaocdn.com/imgextra/i1/91615835/T2SFNZXdldXXXXXXXX_!!91615835.jpg"></a>
   
</div>
<div style="width:1920px;padding:0;float:left;">

<a href="http://ygtc.tmall.com/search.htm?orderType=_hotsell&amp;viewType=grid&amp;baobei_type=&amp;keyword=%BA%A3%BB%EA%C9%C0&amp;price1=&amp;price2=" target="_blank"><img src="http://a.tbcdn.cn/kissy/1.0.0/build/imglazyload/spaceball.gif" src2="http://img01.taobaocdn.com/imgextra/i1/91615835/T22K9BXohbXXXXXXXX_!!91615835.jpg_q75.jpg" data-ks-lazyload="http://img01.taobaocdn.com/imgextra/i1/91615835/T22K9BXohbXXXXXXXX_!!91615835.jpg"></a>
   
</div>
<div style="width:1920px;padding:0;float:left;">

<a href="http://ygtc.tmall.com/shop/view_shop.htm?spm=a1z10.3.0.324.DukoCY&amp;search=y" target="_blank"><img src="http://a.tbcdn.cn/kissy/1.0.0/build/imglazyload/spaceball.gif" src2="http://img04.taobaocdn.com/imgextra/i4/91615835/T2Cmm8XixaXXXXXXXX_!!91615835.jpg_q75.jpg" data-ks-lazyload="http://img04.taobaocdn.com/imgextra/i4/91615835/T2Cmm8XixaXXXXXXXX_!!91615835.jpg"></a>
   
</div>
<div style="width:1920px;padding:0;float:left;">

<a href="http://ygtc.tmall.com/search.htm?spm=a1z10.1.w3.1.hqslaa&amp;orderType=_hotsell&amp;viewType=grid&amp;baobei_type=&amp;keyword=%C6%A4%D2%C2&amp;price1=&amp;price2=" target="_blank"><img src="http://a.tbcdn.cn/kissy/1.0.0/build/imglazyload/spaceball.gif" src2="http://img03.taobaocdn.com/imgextra/i3/91615835/T2YOeBXXdcXXXXXXXX_!!91615835.jpg_q75.jpg" data-ks-lazyload="http://img03.taobaocdn.com/imgextra/i3/91615835/T2YOeBXXdcXXXXXXXX_!!91615835.jpg"></a>
   
将上面的字符串中的src=""和src2=""和data-ks-lazyload=""中的""之间的内容提取出来,注意只要""之间的内容不包含""

解决方案 »

  1.   


    preg_match_all("/src=\"([^\"]+)\"/", $a, $match);
    print_r($match[1]);
    preg_match_all("/src2=\"([^\"]+)\"/", $a, $match);
    print_r($match[1]);
    preg_match_all("/data-ks-lazyload=\"([^\"]+)\"/", $a, $match);
    print_r($match[1]);
      

  2.   

    $s=<<<html
    <a href="http://ygtc.tmall.com//search.htm?userId=&amp;shopId=57299517&amp;view_type=&amp;order_type=&amp;spm=0&amp;search=y&amp;keyword=%BA%A3%BB%EA%C9%C0&amp;price1=&amp;price2=" target="_blank"><img src="http://a.tbcdn.cn/kissy/1.0.0/build/imglazyload/spaceball.gif" src2="http://img01.taobaocdn.com/imgextra/i1/91615835/T2SFNZXdldXXXXXXXX_!!91615835.jpg_q75.jpg" data-ks-lazyload="http://img01.taobaocdn.com/imgextra/i1/91615835/T2SFNZXdldXXXXXXXX_!!91615835.jpg"></a>
       
    </div>
    <div style="width:1920px;padding:0;float:left;">

    <a href="http://ygtc.tmall.com/search.htm?orderType=_hotsell&amp;viewType=grid&amp;baobei_type=&amp;keyword=%BA%A3%BB%EA%C9%C0&amp;price1=&amp;price2=" target="_blank"><img src="http://a.tbcdn.cn/kissy/1.0.0/build/imglazyload/spaceball.gif" src2="http://img01.taobaocdn.com/imgextra/i1/91615835/T22K9BXohbXXXXXXXX_!!91615835.jpg_q75.jpg" data-ks-lazyload="http://img01.taobaocdn.com/imgextra/i1/91615835/T22K9BXohbXXXXXXXX_!!91615835.jpg"></a>
       
    </div>
    <div style="width:1920px;padding:0;float:left;">

    <a href="http://ygtc.tmall.com/shop/view_shop.htm?spm=a1z10.3.0.324.DukoCY&amp;search=y" target="_blank"><img src="http://a.tbcdn.cn/kissy/1.0.0/build/imglazyload/spaceball.gif" src2="http://img04.taobaocdn.com/imgextra/i4/91615835/T2Cmm8XixaXXXXXXXX_!!91615835.jpg_q75.jpg" data-ks-lazyload="http://img04.taobaocdn.com/imgextra/i4/91615835/T2Cmm8XixaXXXXXXXX_!!91615835.jpg"></a>
       
    </div>
    <div style="width:1920px;padding:0;float:left;">

    <a href="http://ygtc.tmall.com/search.htm?spm=a1z10.1.w3.1.hqslaa&amp;orderType=_hotsell&amp;viewType=grid&amp;baobei_type=&amp;keyword=%C6%A4%D2%C2&amp;price1=&amp;price2=" target="_blank"><img src="http://a.tbcdn.cn/kissy/1.0.0/build/imglazyload/spaceball.gif" src2="http://img03.taobaocdn.com/imgextra/i3/91615835/T2YOeBXXdcXXXXXXXX_!!91615835.jpg_q75.jpg" data-ks-lazyload="http://img03.taobaocdn.com/imgextra/i3/91615835/T2YOeBXXdcXXXXXXXX_!!91615835.jpg"></a>
       
    html;
    preg_match_all('/<img src="(.+)" src2="(.+)" data-ks-lazyload="(.+)">/isU',$s,$m);
    print_r($m);
      

  3.   

    不中啊,我都 需求是这样的
    先通过如下代码获取页面代码$con = file_get_contents("http://ygtc.tmall.com");然后将$con内的字符串中的src=""和src2=""和data-ks-lazyload=""中的""之间的内容提取出来(注意只要""之间的内容不包含""),然后通过foo()函数处理后放回原处,foo()函数代码如下function foo($src) {
    return md5($src);//这里只是简单写了下函数的处理方式,实际上处理方式不是这么简单,只是作为事例; 
    }
      

  4.   


    不中啊,我都 需求是这样的
    先通过如下代码获取页面代码$con = file_get_contents("http://ygtc.tmall.com");然后将$con内的字符串中的src=""和src2=""和data-ks-lazyload=""中的""之间的内容提取出来(注意只要""之间的内容不包含""),然后通过foo()函数处理后放回原处,foo()函数代码如下function foo($src) {
    return md5($src);//这里只是简单写了下函数的处理方式,实际上处理方式不是这么简单,只是作为事例; 
    }
      

  5.   

    echo preg_replace_callback('/(<img src=")(.+?)(" src2=")(.+?)(" data-ks-lazyload=")(.+?)(">)/is','foo',$s);
    function foo($src) {
        return $src[1].md5($src[2]).$src[3].md5($src[4]).$src[5].md5($src[6]).$src[7];//这里只是简单写了下函数的处理方式,实际上处理方式不是这么简单,只是作为事例; 
    }
      

  6.   


    这样写到一起,通用性就不行了 页面有的地方的图片并没有替换掉 因为有的地方可能只有一个src并没有src2和data-ks-lazyload
      

  7.   

    echo preg_replace_callback('/(<img src=")(.+?)(" src2=")(.+?)(" data-ks-lazyload=")(.+?)(">)/is','foo',$s);
    function foo($src) {
        return $src[1].md5($src[2]).$src[3].md5($src[4]).$src[5].md5($src[6]).$src[7];//这里只是简单写了下函数的处理方式,实际上处理方式不是这么简单,只是作为事例; 
    }