- 相關(guān)推薦
php過濾HTML標(biāo)簽、屬性等正則表達(dá)式
本文是百分網(wǎng)小編搜索整理的使用代碼實(shí)例給出了過濾HTML內(nèi)容的正則表達(dá)式,具體說明請(qǐng)參閱代碼中的注釋,感興趣的朋友一起學(xué)習(xí)吧!!想了解更多相關(guān)信息請(qǐng)持續(xù)關(guān)注我們應(yīng)屆畢業(yè)生考試網(wǎng)!
$str=preg_replace("/\s+/", " ", $str); //過濾多余回車
$str=preg_replace("/<[ ]+/si","<",$str); //過濾<__("<"號(hào)后面帶空格)
$str=preg_replace("/<\!--.*?-->/si","",$str); //注釋
$str=preg_replace("/<(\!.*?)>/si","",$str); //過濾DOCTYPE
$str=preg_replace("/<(\/?html.*?)>/si","",$str); //過濾html標(biāo)簽
$str=preg_replace("/<(\/?head.*?)>/si","",$str); //過濾head標(biāo)簽
$str=preg_replace("/<(\/?meta.*?)>/si","",$str); //過濾meta標(biāo)簽
$str=preg_replace("/<(\/?body.*?)>/si","",$str); //過濾body標(biāo)簽
$str=preg_replace("/<(\/?link.*?)>/si","",$str); //過濾link標(biāo)簽
$str=preg_replace("/<(\/?form.*?)>/si","",$str); //過濾form標(biāo)簽
$str=preg_replace("/cookie/si","COOKIE",$str); //過濾COOKIE標(biāo)簽
$str=preg_replace("/<(applet.*?)>(.*?)<(\/applet.*?)>/si","",$str); //過濾applet標(biāo)簽
$str=preg_replace("/<(\/?applet.*?)>/si","",$str); //過濾applet標(biāo)簽
$str=preg_replace("/<(style.*?)>(.*?)<(\/style.*?)>/si","",$str); //過濾style標(biāo)簽
$str=preg_replace("/<(\/?style.*?)>/si","",$str); //過濾style標(biāo)簽
$str=preg_replace("/<(title.*?)>(.*?)<(\/title.*?)>/si","",$str); //過濾title標(biāo)簽
$str=preg_replace("/<(\/?title.*?)>/si","",$str); //過濾title標(biāo)簽
$str=preg_replace("/<(object.*?)>(.*?)<(\/object.*?)>/si","",$str); //過濾object標(biāo)簽
$str=preg_replace("/<(\/?objec.*?)>/si","",$str); //過濾object標(biāo)簽
$str=preg_replace("/<(noframes.*?)>(.*?)<(\/noframes.*?)>/si","",$str); //過濾noframes標(biāo)簽
$str=preg_replace("/<(\/?noframes.*?)>/si","",$str); //過濾noframes標(biāo)簽
$str=preg_replace("/<(i?frame.*?)>(.*?)<(\/i?frame.*?)>/si","",$str); //過濾frame標(biāo)簽
$str=preg_replace("/<(\/?i?frame.*?)>/si","",$str); //過濾frame標(biāo)簽
$str=preg_replace("/<(script.*?)>(.*?)<(\/script.*?)>/si","",$str); //過濾script標(biāo)簽
$str=preg_replace("/<(\/?script.*?)>/si","",$str); //過濾script標(biāo)簽
$str=preg_replace("/javascript/si","Javascript",$str); //過濾script標(biāo)簽
$str=preg_replace("/vbscript/si","Vbscript",$str); //過濾script標(biāo)簽
$str=preg_replace("/on([a-z]+)\s*=/si","On\\1=",$str); //過濾script標(biāo)簽
$str=preg_replace("/&#/si","&#",$str); //過濾script標(biāo)簽,如javAsCript:alert(
清除空格,換行
function DeleteHtml($str)
{
$str = trim($str);
$str = strip_tags($str,"");
$str = ereg_replace("\t","",$str);
$str = ereg_replace("\r\n","",$str);
$str = ereg_replace("\r","",$str);
$str = ereg_replace("\n","",$str);
$str = ereg_replace(" "," ",$str);
return trim($str);
}
過濾HTML屬性
1,過濾所有html標(biāo)簽的正則表達(dá)式:
復(fù)制代碼 代碼如下:
</?[^>]+>
//過濾所有html標(biāo)簽的屬性的正則表達(dá)式:
$html = preg_replace("/<([a-zA-Z]+)[^>]*>/","<\\1>",$html);
3,過濾部分html標(biāo)簽的正則表達(dá)式的排除式(比如排除<p>,即不過濾<p>):
復(fù)制代碼 代碼如下:
</?[^pP/>]+>
4,過濾部分html標(biāo)簽的正則表達(dá)式的枚舉式(比如需要過濾<a><p><b>等):
復(fù)制代碼 代碼如下:
</?[aApPbB][^>]*>
5,過濾部分html標(biāo)簽的屬性的正則表達(dá)式的排除式(比如排除alt屬性,即不過濾alt屬性):
復(fù)制代碼 代碼如下:
\s(?!alt)[a-zA-Z]+=[^\s]*
6,過濾部分html標(biāo)簽的屬性的正則表達(dá)式的枚舉式(比如alt屬性):
復(fù)制代碼 代碼如下:
(\s)alt=[^\s]*
【php過濾HTML標(biāo)簽、屬性等正則表達(dá)式】相關(guān)文章:
正則表達(dá)式過濾HTML危險(xiǎn)腳本的實(shí)例12-05
html標(biāo)簽之Object和EMBED標(biāo)簽04-02
php過濾XSS攻擊的函數(shù)03-04
PHP 從 HTML 中分離05-19
PHP數(shù)據(jù)過濾函數(shù)的方法08-13
PHP常用的正則表達(dá)式05-18