Home >Backend Development >PHP Tutorial >php过滤HTML标签、属性等正则表达式汇总_php实例

php过滤HTML标签、属性等正则表达式汇总_php实例

WBOY
WBOYOriginal
2016-05-16 20:36:031732browse
$str=preg_replace("/\s+/", " ", $str); //过滤多余回车
$str=preg_replace("/<[ ]+/si","<",$str); //过滤<__("<"号后面带空格)
 
$str=preg_replace("/<\!--.*&#63;-->/si","",$str); //注释
$str=preg_replace("/<(\!.*&#63;)>/si","",$str); //过滤DOCTYPE
$str=preg_replace("/<(\/&#63;html.*&#63;)>/si","",$str); //过滤html标签
$str=preg_replace("/<(\/&#63;head.*&#63;)>/si","",$str); //过滤head标签
$str=preg_replace("/<(\/&#63;meta.*&#63;)>/si","",$str); //过滤meta标签
$str=preg_replace("/<(\/&#63;body.*&#63;)>/si","",$str); //过滤body标签
$str=preg_replace("/<(\/&#63;link.*&#63;)>/si","",$str); //过滤link标签
$str=preg_replace("/<(\/&#63;form.*&#63;)>/si","",$str); //过滤form标签
$str=preg_replace("/cookie/si","COOKIE",$str); //过滤COOKIE标签
 
$str=preg_replace("/<(applet.*&#63;)>(.*&#63;)<(\/applet.*&#63;)>/si","",$str); //过滤applet标签
$str=preg_replace("/<(\/&#63;applet.*&#63;)>/si","",$str); //过滤applet标签
 
$str=preg_replace("/<(style.*&#63;)>(.*&#63;)<(\/style.*&#63;)>/si","",$str); //过滤style标签
$str=preg_replace("/<(\/&#63;style.*&#63;)>/si","",$str); //过滤style标签
 
$str=preg_replace("/<(title.*&#63;)>(.*&#63;)<(\/title.*&#63;)>/si","",$str); //过滤title标签
$str=preg_replace("/<(\/&#63;title.*&#63;)>/si","",$str); //过滤title标签
 
$str=preg_replace("/<(object.*&#63;)>(.*&#63;)<(\/object.*&#63;)>/si","",$str); //过滤object标签
$str=preg_replace("/<(\/&#63;objec.*&#63;)>/si","",$str); //过滤object标签
 
$str=preg_replace("/<(noframes.*&#63;)>(.*&#63;)<(\/noframes.*&#63;)>/si","",$str); //过滤noframes标签
$str=preg_replace("/<(\/&#63;noframes.*&#63;)>/si","",$str); //过滤noframes标签
 
$str=preg_replace("/<(i&#63;frame.*&#63;)>(.*&#63;)<(\/i&#63;frame.*&#63;)>/si","",$str); //过滤frame标签
$str=preg_replace("/<(\/&#63;i&#63;frame.*&#63;)>/si","",$str); //过滤frame标签
 
$str=preg_replace("/<(script.*&#63;)>(.*&#63;)<(\/script.*&#63;)>/si","",$str); //过滤script标签
$str=preg_replace("/<(\/&#63;script.*&#63;)>/si","",$str); //过滤script标签
$str=preg_replace("/javascript/si","Javascript",$str); //过滤script标签
$str=preg_replace("/vbscript/si","Vbscript",$str); //过滤script标签
$str=preg_replace("/on([a-z]+)\s*=/si","On\\1=",$str); //过滤script标签
$str=preg_replace("/&#/si","&#",$str); //过滤script标签,如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标签的正则表达式:

复制代码 代码如下:
 
?[^>]+>
 
//过滤所有html标签的属性的正则表达式:
 
$html = preg_replace("/]*>/","",$html);

3,过滤部分html标签的正则表达式的排除式(比如排除

,即不过滤

):

复制代码 代码如下:

?[^pP/>]+>

4,过滤部分html标签的正则表达式的枚举式(比如需要过滤

等):

复制代码 代码如下:

?[aApPbB][^>]*>

5,过滤部分html标签的属性的正则表达式的排除式(比如排除alt属性,即不过滤alt属性):
复制代码 代码如下:

\s(?!alt)[a-zA-Z]+=[^\s]*

6,过滤部分html标签的属性的正则表达式的枚举式(比如alt属性):
复制代码 代码如下:

(\s)alt=[^\s]*

Statement:
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn