正则:
| 元字符 | 说明 |
|---|---|
| ^ | 匹配字符串的开始位置 |
| $ | 匹配字符串的结束位置 |
| . | 匹配任意单个字符(换行符 \n 除外) |
| | | 交替 |
| {…} | 指定要限定的数量 |
| [...] | 指定要匹配的字符集 |
| (…) | 对表达式进行逻辑分组 |
| * | 匹配零或多个前面的表达式 |
| + | 匹配一或多个前面的表达式 |
| ? | 匹配零或一个前面的表达式 |
| \ | 放在上面任何一个字符之前,表示匹配该字符本身。放在其他特殊字符后面,表示字符转义(见下面) |
$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("/<(\/?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标签,如javAsCript:alert(
使用Teleport下载网站后会自动在所有超链接上附加tppabs标签,下面是清除Teleport的tppabs标签的方法。
Teleport Ultra是一款相当老牌的离线浏览软件,常用来下载网站到本地,但它会在所有的超链接上都加上tppabs标签,以注明原始地址。
清除所有的tppabs标签我们可以使用Dreamweaver的正则表达式替换功能来完成。
查找:
\btppabs="h[^"]*"
引用21andy的博文,备忘一下,以记录php使用过程中preg_replace正则应用。
要把
xxx/12345.html
替换成
xxx.php?id=12345
两种写法
preg_replace("/xxx\/([0-9]+)\.html/","xxx.php?id=\\1",$data);
preg_replace("'xxx/([0-9]+).html'","xxx.php?id=$1",$data);