日期:2014-05-17  浏览次数:20594 次

php正则表达式获取div标签中的a标签href问题
php正则表达式获取div标签中的a标签href问题

<div class="zx_list_l">
  <ul>
  <li>
  <a href="xxx" target="_blank" class=""></a>

</li>
 </ul>
</div>


页面上有很多<li>标签 都不是我想要的,我想要的就是在这个div标签中的<li>里面的A连接
用正则的话必须先获取div里面的内容,在获取<ul><li>里面A标签连接


效果:
Array
(
  [0] => http://news.cjcp.com.cn/2012/0917/4316066.html
  [1] => http://news.cjcp.com.cn/2012/0917/4316065.html
  [2] => http://news.cjcp.com.cn/2012/0917/4316064.html
  [3] => http://news.cjcp.com.cn/2012/0917/4316063.html
  [4] => http://news.cjcp.com.cn/2012/0917/4316062.html
  [5] => http://news.cjcp.com.cn/2012/0917/4316061.html
  [6] => http://news.cjcp.com.cn/2012/0917/4316060.html
)

------解决方案--------------------
PHP code
$str=<<<txt
<div class="zx_list_l">
  <ul>
  <li>
  <a href="xxx" target="_blank" class=""></a>
</li>
 </ul>
</div>
<div class="aa">
  <ul>
  <li>
  <a href="xxx" target="_blank" class=""></a>

</li>
 </ul>
</div>
txt;
preg_match('/<div class="zx_list_l">(.*)<\/div>/isU',$str,$m);

preg_match_all('/<li.+href="(.*)"/isU',$m[1],$arr);
print_r($arr[1]);