怎么用PHP正则表达式抓取某个标签的特定属性值-创新互联

这篇文章主要介绍“怎么用PHP正则表达式抓取某个标签的特定属性值”,在日常操作中,相信很多人在怎么用PHP正则表达式抓取某个标签的特定属性值问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”怎么用PHP正则表达式抓取某个标签的特定属性值”的疑惑有所帮助!接下来,请跟着小编一起来学习吧!

创新互联建站主要从事网站设计制作、成都网站建设、网页设计、企业做网站、公司建网站等业务。立足成都服务博野,10多年网站建设经验,价格优惠、服务专业,欢迎来电咨询建站服务:18982081108

php正则学了一些日子,抓了一些网站的数据,从而发现每次都自己写正则重新抓很麻烦,于是就想写一个抓取特定标签具有特定属性值的接口通用,直接上代码。

//$html-被查找的字符串 $tag-被查找的标签 $attr-被查找的属性名 $value-被查找的属性值
function get_tag_data($html,$tag,$attr,$value){
$regex = "/<$tag.*?$attr=\".*?$value.*?\".*?>(.*?)<\/$tag>/is";
echo $regex."
"; preg_match_all($regex,$html,$matches,PREG_PATTERN_ORDER); return $matches[1]; } //返回值为数组 查找到的标签内的内容

下面随便给出一个例子

header("Content-type: text/html; charset=utf-8");
$temp = '

首页


日志


LOFTER


相册


博友


关于我

';
$result = get_tag_data($temp,"a","class","fc01");
var_dump($result);

输出结果为

array(6) { [0]=> string(6) "首页" [1]=> string(6) "日志" [2]=> string(6) "LOFTER" [3]=> string(6) "相册" [4]=> string(6) "博友" [5]=> string(9) "关于我" }

查看源码可以看到

array(6) {
[0]=>
string(6) "首页"
[1]=>
string(6) "日志"
[2]=>
string(6) "LOFTER"
[3]=>
string(6) "相册"
[4]=>
string(6) "博友"
[5]=>
string(9) "关于我"
}

到此,关于“怎么用PHP正则表达式抓取某个标签的特定属性值”的学习就结束了,希望能够解决大家的疑惑。理论与实践的搭配能更好的帮助大家学习,快去试试吧!若想继续学习更多相关知识,请继续关注创新互联网站,小编会继续努力为大家带来更多实用的文章!


当前标题:怎么用PHP正则表达式抓取某个标签的特定属性值-创新互联
本文URL:http://abwzjs.com/article/codjoj.html