常用PHP正则表达式过滤html中的标签

  •   
  • 3717
  • PHP
  • 1
  • super_dodo
  • 2014/06/27

常用的PHP通过正则表达式过滤HTML的标签,可以实现在某些情况下,只需要取到文本信息,而剔除富文本编辑器带来的一些接口的无法适应和异常。
网上搜索了一些,直接上代码,欢迎补充。

$str=preg_replace("/\s+/", " ", $str); //过滤多余回车 
$str=preg_replace("/<&#91; &#93;+/si","<",$str); //过滤<__("<"号后面带空格) 
$str=preg_replace("/<\!–.*?–>/si","",$str); //注释 
$str=preg_replace("/<(\!.*?)>/si","",$str); //过滤DOCTYPE 
$str=preg_replace("/<(\/?html.*?)>/si","",$str); //过滤html标签 
$str=preg_replace("/<(\/?br.*?)>/si","",$str); //过滤br标签 
$str=preg_replace("/<(\/?head.*?)>/si","",$str); //过滤head标签 
$str=preg_replace("/<(\/?meta.*?)>/si","",$str); //过滤meta标签 
$str=preg_replace("/<(\/?body.*?)>/si","",$str); //过滤body标签 
$str=preg_replace("/<(\/?link.*?)>/si","",$str); //过滤link标签 
$str=preg_replace("/<(\/?form.*?)>/si","",$str); //过滤form标签 
$str=preg_replace("/cookie/si","COOKIE",$str); //过滤COOKIE标签 
$str=preg_replace("/<(applet.*?)>(.*?)<(\/applet.*?)>/si","",$str); //过滤applet标签 
$str=preg_replace("/<(\/?applet.*?)>/si","",$str); //过滤applet标签 
$str=preg_replace("/<(style.*?)>(.*?)<(\/style.*?)>/si","",$str); //过滤style标签 
$str=preg_replace("/<(\/?style.*?)>/si","",$str); //过滤style标签 
$str=preg_replace("/<(title.*?)>(.*?)<(\/title.*?)>/si","",$str); //过滤title标签 
$str=preg_replace("/<(\/?title.*?)>/si","",$str); //过滤title标签 
$str=preg_replace("/<(object.*?)>(.*?)<(\/object.*?)>/si","",$str); //过滤object标签 
$str=preg_replace("/<(\/?objec.*?)>/si","",$str); //过滤object标签 
$str=preg_replace("/<(noframes.*?)>(.*?)<(\/noframes.*?)>/si","",$str); //过滤noframes标签 
$str=preg_replace("/<(\/?noframes.*?)>/si","",$str); //过滤noframes标签 
$str=preg_replace("/<(i?frame.*?)>(.*?)<(\/i?frame.*?)>/si","",$str); //过滤frame标签 
$str=preg_replace("/<(\/?i?frame.*?)>/si","",$str); //过滤frame标签 
$str=preg_replace("/<(script.*?)>(.*?)<(\/script.*?)>/si","",$str); //过滤script标签 
$str=preg_replace("/<(\/?script.*?)>/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标签

Life always has many things to bring you down. But, what can really bring you down is your attitude.——人生中会有很多事情把我们击败,但真正打垮我们的其实是我们自己的态度。