PHP8.1.21版本已发布
vue8.1.21版本已发布
jquery8.1.21版本已发布

php利用正则表达式提取内容中的链接

墨辰丷
墨辰丷 原创
2023-03-30 20:26:01 1992浏览

这篇文章主要介绍了php正则表达式获取内容所有链接的相关资料,需要的朋友可以参考下。

方法一:

function get_all_url($code){ 
    preg_match_all('/<as+href=["|']?([^>"' ]+)["|']?s*[^>]*>([^>]+)</a>/i',$code,$arr); 
    return array('name'=>$arr[2],'url'=>$arr[1]); 
}

方法二:

/**
 * date 2015-07-24
 **/
 
$site=substr($url,0,strpos($url,"//m.sbmmt.com/m/",8));//站点 
$base=substr($url,0,strrpos($url,"//m.sbmmt.com/m/")+1);//文件所在目录 
$fp = fopen($url, "r" );//打开url 
while(!feof($fp))$contents.=fread($fp,1024);// 
$pattern="|href=['"]?([^ '"]+)['" ]|u"; 
preg_match_all($pattern,$contents, $regarr, preg_set_order);//匹配所有href= 
for($i=0;$i<count($regarr);$i++){//遍历所有匹配 
if(!eregi("://",$regarr[$i][1]))//是否是相对路径,即是否还有:// 
if(substr($regarr[$i][1],0,1)=="//m.sbmmt.com/m/")//是否是站点的根目录 
  echo "link".($i+1).":".$site.$regarr[$i][1]."<br/>";//根目录 
else
  echo "link".($i+1).":".$base.$regarr[$i][1]."<br/>";//当前目录 
else
echo "link".($i+1).":".$regarr[$i][1]."<br/>";//相对路径 
}
fclose($fp);

总结:以上就是本篇文的全部内容,希望能对大家的学习有所帮助。

相关推荐:

php生成随机密码五种方法

php设计模式基础知识与应用

PHP+jQuery+MySql实现红蓝投票实例

以上就是php利用正则表达式提取内容中的链接的详细内容,更多请关注php中文网其它相关文章!

声明:本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn核实处理。