- 帖子
- 212
- 主题
- 189
- 精华
- 0
- 积分
- 1450
- 贡献
- 1132
- 激情
- 1348
- 阅读权限
- 100
- 最后登录
- 2018-6-13
|
php正则怎么去除js代码
1 t5 E( z" q& X4 Q! T' C) }9 A+ S. P- S! n* }3 Z
- <?php
- $str = 'yes,<scRipt type="text/javascript">
- var IKFromImport=false;
- </script>ok!';
- $text = preg_replace("'<script(.*?)<\/script>'is","",$str);
- //yes,ok!
- echo $text;
复制代码
# T' y% O) N- i7 ?
6 T8 ~# U, b0 A; n* Z1 V$ Rphp 正则匹配css
0 ~$ X! E+ ~2 R" q @7 L- O) o3 x9 U5 _1 J- B- `
/ w* B" l: J7 ]$ M: b0 X
- echo preg_replace('/(?:(<link.+href=\")((?!http).+\.css){1}(\".*(?:type=\"text\/css\"){1}.*>))|(?:(<link.+(?:type=\"text\/css\"){1}.*href=\")((?!http).+\.css){1}(\".*>))/i',"\${1}\${4}http://a.com/\${2}\${5}\${3}\${6}",$html);
-
复制代码 * S; J2 M c; G6 V
' g' O( _7 Z2 i( `& u
- $search = array ("'<script[^>]*?>.*?</script>'si", // 去掉 javascript
- "'<style[^>]*?>.*?</style>'si", // 去掉 css
- "'<[/!]*?[^<>]*?>'si", // 去掉 HTML 标记
- "'<!--[/!]*?[^<>]*?>'si", // 去掉 注释 标记
- "'([rn])[s]+'", // 去掉空白字符
- "'&(quot|#34);'i", // 替换 HTML 实体
- "'&(amp|#38);'i",
- "'&(lt|#60);'i",
- "'&(gt|#62);'i",
- "'&(nbsp|#160);'i",
- "'&(iexcl|#161);'i",
- "'&(cent|#162);'i",
- "'&(pound|#163);'i",
- "'&(copy|#169);'i",
- "'&#(d+);'e"); // 作为 PHP 代码运行
- $replace = array ("",
- "",
- "",
- "",
- "\1",
- "\"",
- "&",
- "<",
- ">",
- " ",
- chr(161),
- chr(162),
- chr(163),
- chr(169),
- "chr(\1)");
- //$document为需要处理字符串,如果来源为文件可以$document = file_get_contents($filename);
- $out = preg_replace($search, $replace, $document);
复制代码
# b" z. w& P! e7 O
0 X2 _; v$ V- I0 v( _& n7 c也可以使用php的内置函数strip_tags()清除html,js,注释等标记 |
|