您的位置:

php匹配html标签(php解析html标签)

本文目录一览:

PHP正则表达式如何匹配HTML标签

这个问题类似求括号配对. 用正则方法可能不行. 可以这样:

1) 字符串分析法求解: 建立一个计数器, 同时从前向后扫描 html 内容, 从要选择的段落开头开始, 每次读到一个 td .. 标签, 计数器加一, 每次读到一个 /td 标签, 计数器减一, 如果 没有意外, 当计数器减为零时, 就找到了配对的 td 结束标签.

2) 用 XmlDocument 读取整段 html, 然后利用 DOM 的一系列方法选择出你要的内容.

php如何用正则匹配如下html标签

就是div class="sk".*?/div吧,注意引号的使用即可。星号后面的问号可以防止贪婪。

php正则匹配html

?php

$content = '';//你的网内容;

preg_match_all('|[(]"(.*)"[)];|isU',$content,$arr );

foreach($arr[1] as $key=$value)

$arr[1][$key]='"'.$value.'"';

print_r($arr[1]);

PHP正则表达式匹配html标签属性值

?php

$str = 'a id="btlist10" st="1" ditem="true" class="item multi-lines with-avatar" ftios="1" ck="TlRZNFlUSTRNakk9" 

ft="1" data="我想匹配的属性值" ix="10" analytical="false" s1="我想匹配的属性值2" 

jxd1="0781C99068C8FEBF" jxd2="69A2D6435ABEAF87817A812290560AB3" onclick="openmenu($(this))"';

$fun = function($str,$key){

    $str=preg_replace("/[\s\S]*\s".$key."[=\"\']+([^\"\']*)[\"\'][\s\S]*/","$1",$str);

    return $str;

};

$data = $fun($str, "data");

echo $data;

echo "\n";

$s1 = $fun($str, "s1");

echo $s1;

echo "\n";

$other = $fun($str, "ck");

echo $other;

echo "\n";

$other = $fun($str, "onclick");

echo $other;

?