标题:
[PHP 语言]
分享php正则删除/去除/过滤html标记代码
[打印本页]
作者:
jfx
时间:
2015-9-21 20:37
标题:
分享php正则删除/去除/过滤html标记代码
php正则怎么去除js代码
, H: l2 N# t: w8 q m
; d6 q$ t i a9 I* f
<?php
$str = 'yes,<scRipt type="text/javascript">
var IKFromImport=false;
</script>ok!';
$text = preg_replace("'<script(.*?)<\/script>'is","",$str);
//yes,ok!
echo $text;
复制代码
/ D. |% l# `* L$ E' W2 Y7 v
' O A' \4 J0 @. [2 U* [
php 正则匹配css
$ ? `) A5 `: r6 k
" s {# H: ]. @& F( _# C/ `
( _/ k# V1 c# b- g, m" I$ L
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);
复制代码
3 g- Q- m" H" D8 h2 E* X
" ~, K* Y% G) {7 P
$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);
复制代码
$ e: K$ d* C9 M8 d# B2 V
H6 o- X8 Z, o- q9 Z) _: W
也可以使用php的内置函数
strip_tags()
清除html,js,注释等标记
欢迎光临 捷飞网络论坛 (http://bbs.1kkg.com/)
Powered by Discuz! 7.2