<dl>
<dd class="photo"><div class="rank"><span class="level1">8</span></div><div class="pbox"><a href="http://www.baidu.com/to.aspx?pid=3017468749" target="_blank"><img src="http://img01.taobaocdn.com/bao/uploaded/i1/T1tpRKXdtvXXcLHxQ7_064743.jpg_sum.jpg"/></a></div></dd>
<dd class="name"><a href="http://www.baidu.com/to.aspx?pid=3017468749" target="_blank">标题</a><p>卖家:<a href="http://www.baidu.com/to.aspx?uid=0287cf6c19f6b83d2098ef56abb326af" target="_blank">我是卖家名 <img src="http://img.baidu.com/s_cap_1.gif"></a></p></dd>
<dd class="price">¥139.00</dd>
<dd class="sellnum">月销量超<span>1</span>件</dd>
<dd class="area">辽宁大连</dd>
</dl>
我要提取 有用的东西 比如图片地址 卖家名称 标题 等等
这个要怎么写 麻烦高手赐教
<dd class="photo"><div class="rank"><span class="level1">8</span></div><div class="pbox"><a href="http://www.baidu.com/to.aspx?pid=3017468749" target="_blank"><img src="http://img01.taobaocdn.com/bao/uploaded/i1/T1tpRKXdtvXXcLHxQ7_064743.jpg_sum.jpg"/></a></div></dd>
<dd class="name"><a href="http://www.baidu.com/to.aspx?pid=3017468749" target="_blank">标题</a><p>卖家:<a href="http://www.baidu.com/to.aspx?uid=0287cf6c19f6b83d2098ef56abb326af" target="_blank">我是卖家名 <img src="http://img.baidu.com/s_cap_1.gif"></a></p></dd>
<dd class="price">¥139.00</dd>
<dd class="sellnum">月销量超<span>1</span>件</dd>
<dd class="area">辽宁大连</dd>
</dl>
我要提取 有用的东西 比如图片地址 卖家名称 标题 等等
这个要怎么写 麻烦高手赐教
preg_match_all("<dd[^>]*>(?:<(?!/?dd)[^<>]*>)*([\d\D]+)(?:<(?!/?dd)[^<>]*>)*</dd>",$scr,$infoarray);不知对否,还没验证
preg_match_all("#<dd[^>]*>(?:<(?!/?dd)[^<>]*>)*([\d\D]+)(?:<(?!/?dd)[^<>]*>)*</dd>#",$scr,$infoarray);好像漏写了点啥
$scr = "<dl>
<dd class=\"photo\"><div class=\"rank\"><span class=\"level1\">8</span></div><div class=\"pbox\"><a href=\"http://www.baidu.com/to.aspx?pid=3017468749\" target=\"_blank\"><img src=\"http://img01.taobaocdn.com/bao/uploaded/i1/T1tpRKXdtvXXcLHxQ7_064743.jpg_sum.jpg\"/></a></div></dd>
<dd class=\"name\"><a href=\"http://www.baidu.com/to.aspx?pid=3017468749\" target=\"_blank\">标题</a><p>卖家:<a href=\"http://www.baidu.com/to.aspx?uid=0287cf6c19f6b83d2098ef56abb326af\" target=\"_blank\">我是卖家名 <img src=\"http://img.baidu.com/s_cap_1.gif\"></a></p></dd>
<dd class=\"price\">¥139.00</dd>
<dd class=\"sellnum\">月销量超<span>1</span>件</dd>
<dd class=\"area\">辽宁大连</dd>
</dl>";
$infoarray = array();
$scr = preg_replace("#<(?!/?dd)[^<>]*>#","",$scr);
preg_match_all("#<dd[^>]*>([^<>]+?)</dd>#",$scr,$infoarray);
print_r($infoarray[1]);由于中间有被标签断开的地方,所以如果能够先过滤标签可能比较好。这个是测试后的效果,试试符合需求不。
2、<a href=\"http://www.baidu.com/to.aspx?pid=3017468749\" target=\"_blank\"> pid的的数字
3、<img src=\"http://img01.taobaocdn.com/bao/uploaded/i1/T1tpRKXdtvXXcLHxQ7_064743.jpg_sum.jpg\"/> 图片地址
4、<a href=\"http://www.baidu.com/to.aspx?pid=3017468749\" target=\"_blank\">标题</a> 标题
5、<p>卖家:<a href=\"http://www.baidu.com/to.aspx?uid=0287cf6c19f6b83d2098ef56abb326af\" target=\"_blank\">我是卖家名 <img src=\"http://img.baidu.com/s_cap_1.gif\"></a></p> 卖家昵称
6、<dd class=\"price\">¥139.00</dd> 价钱
7、<dd class=\"sellnum\">月销量超<span>1</span>件</dd> 销量
8、<dd class=\"area\">辽宁大连</dd> 地址
可能一个一个匹配获得比较好,网页格式比较固定的情况下,你对每个要取的内容分别写正则来获得吧,一次全匹配写起来头大,会很长很绕。一个一个写清晰些。