如何用php正则表达式获得网页上所有的链接

如何用php正则表达式获得网页上所有的链接,得到一个页面上的所有a标签链接

<?php$html = file_get_contents('http://www.qq.com');

preg_match_all('/<a\\s.*?href=\"([^\"]+)\"[^>]*>(.*?)<\/a>/i',$html, $arr); printf("<p>输出数据为:</p><pre>%s</pre>\n",var_export( $arr[1] ,TRUE)); ?>

正则只可以匹配a标签中的href=“”部门,

虽然bug也多,就是

1、href=无引号时,

2、链接是JS代码时,

3、是相对地点时,

4、…………

总之在本身写收罗URL链接时要思量许多因素,假如实在不想那么多,可以利用 Snoopy,Snoopy有很完整的收罗链接法则。

《利用Snoopy的获取a链接法则》

内容版权声明:除非注明,否则皆为本站原创文章。

转载注明出处:https://www.heiqu.com/7993.html