可以使用正则表达式来解决这个问题
具体的代码很多不详细写了,举个例子给题主吧
<?php
$htmlStr = '<li>首页</li>'
preg_match_all('/<li>.*?<\/li>/', $htmlStr , $res)
$ret = preg_replace('/(<li>|<\/li>)/', '', $res[0][0])
//输出res
//var_dump($res)
echo $ret
最终输出的结果为:首页
在这个例子上题主所需要的值基本都可以用正则算法过滤出来
希望能帮到题主
如果可以,还请采纳
$html="这里是html标签内容"$is_div=preg_match_all("/<div class=\"ABC\">(.+?)<\/div>/is", $html, $div)
if($is_div){
foreach($div as $d){//循环读取带有class=ABC的标签
$d_str=$d[0]//得到div字符串
$is_span=preg_match_all("/<span>(.+?)<\/span>/is", $d_str, $s)
if($is_span){//如果存在span标签,则执行替换
$new_d_str=str_replace($d_str,"class=\"DEF\"","class=\"ABC\"")//替换ABC为DEF
$html=str_replace($html,$new_d_str,$d_str)//替换
}
}
}
//$html就是得到替换后的html
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)