PHP正则获取A标签的链接地址

发布时间:2020-05-18 21:19:36 作者:jyb2014
来源:网络 阅读:1936

<?php

$str ='<a id="top8" href="http://abc.com/song/A.htm" class="p14" target="_top">歌曲列表</a><br><a target="_blank" id="bp" href="http://bca.com/list/bangping.html" class="p14">中文金曲榜</a><br><td nowrap="nowrap">&nbsp;<a id="top19" href="qingyinyue.html" class="p14" target="_top">轻音乐</a></td>';

$str = $str ."<iframe src=\"/info/public/bipin.shtml\" id=\"leitai\" name=\"leitai\" frameborder=\"0\" scrolling=\"no\" width=\"100%\" height=\"307px;\"></iframe>";

//链接地址+标题(href必须带双引号)

$pat ='/<a(.*?)href="(.*?)"(.*?)>(.*?)<\/a>/i';

preg_match_all($pat, $str, $m);

print_r($m[2]);

print_r($m[4]);

for($i=0;$i<count($m[2]) ;$i++){

     echo '<li><a href="'.$_SERVER['PHP_SELF'].'?url='.$m[2][$i].'">'.$m[4][$i].'</a></li>';

}

echo "<hr />";

//仅链接地址(href必须带双引号)

preg_match_all('/(?<=href=")[\w\d\.:\/]*/',$str,$m);

print_r($m);

echo "<hr />";

//链接地址+标题(通用)

preg_match_all('/<a.*?(?: |\\t|\\r|\\n)?href=[\'"]?(.+?)[\'"]?(?:(?: |\\t|\\r|\\n)+.*?)?>(.+?)<\/a.*?>/sim',$str,$m);

print_r($m[1]);

print_r($m[2]);

echo "<hr />";

//iframe地址(通用)

preg_match_all('/<iframe.*?(?: |\\t|\\r|\\n)?src=[\'"]?(.+?)[\'"]?(?:(?: |\\t|\\r|\\n)+.*?)?>(.*?)<\/iframe.*?>/sim',$str,$m);

print_r($m[1]);

?>


推荐阅读:
  1. jquery获取链接地址和跳转
  2. php怎么通过正则表达式删除a标签?

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

标签 链接地址 正则获取

上一篇:3分钟掌握MongoDB中的regex几种用法

下一篇:css中样式的优先级简单总结

相关阅读

您好,登录后才能下订单哦!

密码登录
登录注册
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》