本文目錄一覽:
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;
?
原創文章,作者:VNMQM,如若轉載,請註明出處:https://www.506064.com/zh-hk/n/329003.html