首页 > 折腾WP > preg_replace 正则过滤字符串代码

preg_replace 正则过滤字符串代码

虽然可以用 strip_tags() 函数剥去 HTML、XML 以及 PHP 的标签,但是空格、回车之类的还是去不掉,另外某些地方可能需要区别对待过滤的标签,不能全部过滤,这时候下面的东西就是我们需要的。防止以后再去瞎找,就转过来作为备忘好了。

$str=preg_replace("/\s+/", " ", $str); //过滤多余回车
$str=preg_replace("/<[ ]+/si","<",$str); //过滤<__("<"号后面带空格)
$str=preg_replace("/<\!–.*?–>/si","",$str); //注释
$str=preg_replace("/<(\!.*?)>/si","",$str); //过滤DOCTYPE
$str=preg_replace("/<(\/?html.*?)>/si","",$str); //过滤html标签
$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标签,如javAsCript:alert('aabb)

来源:守望的麦子

  1. 启东百业网@ 2011.04.04 / 00:03| #1

    你写的代码看不太懂呢

  2. sprityaoyao@ 2011.04.04 / 00:03| #2

    沙发,正则是灰常的强大的

  3. 小邪@ 2011.04.04 / 07:44| #3

    好方便 o(* ̄▽ ̄*)ゞ,放到收藏夹里候着。

  4. 阿骏@ 2011.04.04 / 13:39| #4

    我一看到代码就有点晕。我的潜意识里面抵制代码呵呵呵

  5. 减肥产品排行榜@ 2011.04.04 / 15:15| #5

    代码很让人头疼啊 呵呵

  6. Utaoy@ 2011.04.04 / 20:12| #6

    一星期以前我看这个绝对是头昏眼涨的,现在好啦,基本上能看懂,说明我这个星期的努力没白费,哈哈

  7. 七七@ 2011.04.04 / 21:50| #7

    来看看博主,支持下!

  8. luren@ 2011.04.04 / 22:54| #8

    @小邪
    小邪 童鞋驾到,真荣幸 :o

    @Utaoy
    其实说实话,这个正则我也不太懂~~

  9. Google地球@ 2011.04.05 / 19:54| #9

评论提交中, 请稍候...