最近百度站长平台推出了一个新产品,就是MIP,比较适合文章站使用,CMS大学小编在给帝国cms的文章站制作mip站点时遇到了一个问题,模板代码都写好后,因为我们的内容页输出的正文是由后台的编辑器生成的,带有不少样式代码,而百度MIP是不允许带有内联样式的,这就需要对样式进行过滤了,为了方便,cms大学小编整理了常用的php正则过滤表达式,大家根据需要使用就可以了。
折叠展开PHP 代码
- <?php
- $str=preg_replace("/\s+/", " ", $str);
- $str=preg_replace("/<[ ]+/si","<",$str);
- $str=preg_replace("/<\!–.*?–>/si","",$str);
- $str=preg_replace("/<(\!.*?)>/si","",$str);
- $str=preg_replace("/<(\/?html.*?)>/si","",$str);
- $str=preg_replace("/<(\/?br.*?)>/si","",$str);
- $str=preg_replace("/<(\/?head.*?)>/si","",$str);
- $str=preg_replace("/<(\/?meta.*?)>/si","",$str);
- $str=preg_replace("/<(\/?body.*?)>/si","",$str);
- $str=preg_replace("/<(\/?link.*?)>/si","",$str);
- $str=preg_replace("/<(\/?form.*?)>/si","",$str);
- $str=preg_replace("/cookie/si","COOKIE",$str);
- $str=preg_replace("/<(applet.*?)>(.*?)<(\/applet.*?)>/si","",$str);
- $str=preg_replace("/<(\/?applet.*?)>/si","",$str);
- $str=preg_replace("/<(style.*?)>(.*?)<(\/style.*?)>/si","",$str);
- $str=preg_replace("/<(\/?style.*?)>/si","",$str);
- $str=preg_replace("/<(title.*?)>(.*?)<(\/title.*?)>/si","",$str);
- $str=preg_replace("/<(\/?title.*?)>/si","",$str);
- $str=preg_replace("/<(object.*?)>(.*?)<(\/object.*?)>/si","",$str);
- $str=preg_replace("/<(\/?objec.*?)>/si","",$str);
- $str=preg_replace("/<(noframes.*?)>(.*?)<(\/noframes.*?)>/si","",$str);
- $str=preg_replace("/<(\/?noframes.*?)>/si","",$str);
- $str=preg_replace("/<(i?frame.*?)>(.*?)<(\/i?frame.*?)>/si","",$str);
- $str=preg_replace("/<(\/?i?frame.*?)>/si","",$str);
- $str=preg_replace("/<(script.*?)>(.*?)<(\/script.*?)>/si","",$str);
- $str=preg_replace("/<(\/?script.*?)>/si","",$str);
- $str=preg_replace("/javascript/si","Javascript",$str);
- $str=preg_replace("/vbscript/si","Vbscript",$str);
- $str=preg_replace("/on([a-z]+)\s*=/si","On\\1=",$str);
- $str=preg_replace("/&#/si","&#",$str);
-
- $str = preg_replace( "@<script(.*?)</script>@is", "", $str );
- $str = preg_replace( "@<iframe(.*?)</iframe>@is", "", $str );
- $str = preg_replace( "@<style(.*?)</style>@is", "", $str );
- $str = preg_replace( "@<(.*?)>@is", "", $str );
- ?>