當前位置:首頁 » 編程語言 » php匹配html標簽

php匹配html標簽

發布時間: 2022-05-04 00:41:33

『壹』 php正則表達式匹配html標簽屬性值

<?php
$str='<aid="btlist10"st="1"ditem="true"class="itemmulti-lineswith-avatar"ftios="1"ck="TlRZNFlUSTRNakk9"
ft="1"data="我想匹配的屬性值"ix="10"analytical="false"s1="我想匹配的屬性值2"
jxd1="0781C99068C8FEBF"jxd2=""onclick="openmenu($(this))">';
$fun=function($str,$key){
$str=preg_replace("/[sS]*s".$key."[="']+([^"']*)["'][sS]*/","$1",$str);
return$str;
};
$data=$fun($str,"data");
echo$data;

echo" ";

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

echo" ";

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

echo" ";

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

?>

『貳』 PHP正則表達式如何匹配HTML標簽

這個問題類似求括弧配對. 用正則方法可能不行. 可以這樣:

1) 字元串分析法求解: 建立一個計數器, 同時從前向後掃描 html 內容, 從要選擇的段落開頭開始, 每次讀到一個 <td ..> 標簽, 計數器加一, 每次讀到一個 </td> 標簽, 計數器減一, 如果 沒有意外, 當計數器減為零時, 就找到了配對的 td 結束標簽.

2) 用 XmlDocument 讀取整段 html, 然後利用 DOM 的一系列方法選擇出你要的內容.

『叄』 php正則匹配html標簽並替換掉

$tag = '/\<div class=\"m-updigg f-fl\"\>(\n)?\<span class=\"zanbox\" id=\"arc(\d+)\">(.*?)\<\/span\>(\n)?\<\/div\>/i' ;

大概是這樣 沒環境 無法測試

『肆』 PHP正則表達式匹配HTML標簽為什麼要加#號

你好,加'#'號,代表這個正則表達式的起始位置,就和'/'的作用是一樣的.
類似的還有'!'號.
例子如下:
$s='123456';
$a=preg_match('!\d+!',$s,$item);
print_r($item[0]);

『伍』 如何用PHP 正則匹配出含有HTML標簽的字元串中的英文單詞

通過仔細閱讀問題描述,樣本採用 html格式編寫,其內容為中英文互譯,如問題所要求的:「正文中的,英文單詞都匹配出來」。

提供一下思路:

建議可以將問題簡化一下,即只取正文中的英文部分。

通過觀察如上提供的樣本中,大部分的英文部分都以標簽<div class="set_en">...</div>(其中有一個 div標簽沒有配對) ,則步驟如下:

1、先編寫正則取出標簽中的內容:

『陸』 php正則匹配取出html標簽內屬性值問題

$matches = array();$b = '<span id="oldtitle"><strong>艾布拉姆斯他爹</strong></span>';preg_match_all('(<span id="oldtitle"><strong>(.*)</strong></span>)', $b, $matches);print_r($matches);

『柒』 php 正則匹配HTML標簽中間內容

<?php
$aa="<div class=\"avatar\">
<a rel=\"nofollow\" href=\"/user/1251844324/\" target=\"_blank\" style=\"display: block; height: 50px; overflow: hidden;\">
<img src=\"http://p0.pstatp.com/thumb/207/1113504235\" />
</a>
</div>
<ul class=\"comment-content\">
<li>
<span class=\"name\">
<a rel=\"nofollow\" href=\"/user/1251844324/\" target=\"_blank\">我去年買了個表 </a>
:
</span>
<span class=\"content\">很虛。。。</span>
</li>
</ul>";
//echo $aa;
if(preg_match("/href=\"\/(.*)\" target/",$aa,$matched)){
echo "<br>one¨".$matched[1];
}
if(preg_match("/<img src=\"(.*)\" \/>/",$aa,$matched)){
echo "<br>two¨".$matched[1];
}
if(preg_match("/_blank\">(.*)<\/a>/",$aa,$matched)){
echo "<br>three¨".$matched[1];
}
if(preg_match("/content\">(.*)<\/span>/",$aa,$matched)){
echo "<br>four¨".$matched[1];
}
?>

運行的結果是:

one¨user/1251844324/
two¨http://p0.pstatp.com/thumb/207/1113504235
three¨我去年買了個表
four¨很虛。。。

是不是你想要的,或者你存取數據的方法是什麼樣的,可以看情況選擇循環語句。
有什麼問題可以追問。

『捌』 php如何用正則匹配如下html標簽

就是<div class="sk">.*?</div>吧,注意引號的使用即可。星號後面的問號可以防止貪婪。

『玖』 php 正則匹配<html> 的問題。

<html>(.*)</html> 這樣根本不行,因為源代碼裡面有換行ch(13),還有一些 tab鍵,應該這樣:

preg_match('/<html>([\s\S]*)</html>/iU',$get,$data);
在這里 $get 是所有的的內容,就是要匹配的文章全部,
$data 是正則匹配後的結果,你可以 printf 出來看看。
上面的 [\s\S]* 這是匹配所有字元,所有回車,所有字元。

在舉一個例子給你吧,要設我為最佳哇,哈哈,謝謝。

preg_match('/<div class="contentCenter">([\s\S]*)</div>/iU',$get,$lists);

看這個例子,你就更了解這個函數啦。。。。

『拾』 PHP如何匹配html標簽中多個換行的內容

$str='<p class="p1">
<a href="這里是鏈接"
title="清醒了">第2回</a>
</p>';
preg_match_all('%<p class="p1"[^"]*href="([^"]*)"[^"]*title="([^"]*)"%',$str,$arr);
echo $arr[1][0];
echo $arr[2][0];

熱點內容
境外伺服器租用怎麼辦 發布:2024-05-03 11:45:34 瀏覽:943
我的世界伺服器怎麼設置到重生點 發布:2024-05-03 11:33:04 瀏覽:752
mysqllinux安裝包下載 發布:2024-05-03 11:32:07 瀏覽:934
以太演算法的幣 發布:2024-05-03 11:30:45 瀏覽:383
編譯nfs 發布:2024-05-03 11:30:40 瀏覽:432
srs搭建直播伺服器 發布:2024-05-03 11:29:53 瀏覽:133
南通哪裡有賣密碼鎖的 發布:2024-05-03 11:22:01 瀏覽:522
除法指演算法 發布:2024-05-03 11:21:23 瀏覽:844
h265壓縮 發布:2024-05-03 11:20:27 瀏覽:490
手機相機自拍時怎麼看是否存儲 發布:2024-05-03 11:08:49 瀏覽:544