『壹』 php 去除字元串中指定字元之間的字元
<?php
/**
* 刪除指定的HTML標簽及其中內容,暫時只支持單標簽清理
*
* @param string $string -- 要處理的字元串
* @param string $tagname -- 要刪除的標簽名稱
* @param boolean $clear -- 是否刪除標簽內容
* @return string -- 返回處理完的字元串
*/
function replace_html_tag($string, $tagname, $clear = false){
$re = $clear ? '' : '\1';
$sc = '/<' . $tagname . '(?:\s[^>]*)?>([\s\S]*?)?<\/' . $tagname . '>/i';
return preg_replace($sc, $re, $string);
}
/**
* 以下是測試代碼
*/
// 網路首頁內容
$string = file_get_contents('http://www..com/');
// 去掉 style 及包含內容
$string = replace_html_tag($string, 'style', true);
$string = replace_html_tag($string, 'script', true);
// 去掉 a 標簽,並保存其中內容
$string = replace_html_tag($string, 'a');
// 去掉 span 標簽,並保存其中內容
$string = replace_html_tag($string, 'span');
echo $string;
?>
『貳』 php正則匹配所有a標簽,並刪除
1,過濾所有html標簽的正則表達式:</?[^>]+>
2,過濾所有html標簽的屬性的正則表達式:$html = preg_replace("/<([a-zA-Z]+)[^>]*>/","<\\1>",$html);
3,過濾部分html標簽的正則表達式的排除式(比如排除<p>,即不過濾<p>):</?[^pP/>]+>
4,過濾部分html標簽的正則表達式的枚舉式(比如需要過濾<a><p><b>等):</?[aApPbB][^>]*>
5,過濾部分html標簽的屬性的正則表達式的排除式(比如排除alt屬性,即不過濾alt屬性):\s(?!alt)[a-zA-Z]+=[^\s]*
『叄』 php正則表達式去掉開頭的a標簽
$res = preg_replace("/<a.+<\/a>(.*)/", "$1", $a);
$res就是你要的結果
『肆』 php 去掉a標簽中的鏈接
只是保留內容,你把下面的代碼改改就行了:
<?php
$html_with_a_tags ='<a href="www..com" target="_blank" class="keylink">玉石</a>';
//保存一個超鏈接字元串變數,php當字元串處理
$txt = strip_tags($html_with_a_tags);
//用strip_tags去掉html標簽
echo $txt;
//輸出結果
?>
至於你的說什麼object,把它調進去就行了
『伍』 php 正則過濾掉 指定的a標簽
我這個更好
<?php
$str='<a class="qc" href="/car">汽車</a><a class="db" href="/car">大巴</a><a class="qc" href="/car">汽車</a>';
$str=preg_replace("/<a class=\"qc\" href=\"(.*)\">(.*)<\\/a>/iU","$2",$str); //過濾script標簽
echo $str;
?>