PHP使用正则表达式去除HTML、CSS及JS代码
作者:白露时间:2026-10-25 11:02:43浏览:620
本文介绍在PHP中利用正则表达式清除字符串内嵌的JavaScript、CSS及HTML标签的方法。通过定义匹配规则数组与替换值数组,使用preg_replace函数执行批量替换,从而获取纯净文本内容。
PHP正则过滤HTML/CSS/JS代码实现方法
示例代码:
<?php
$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('http://www.sina.com.cn');
$out = preg_replace($search, $replace, $document);
echo $out;
?> 保存为 get.php 即可。
作者最新文章
sigma.js 怎么实现节点点击、拖拽与悬停提示交互
2026-11-05 15:03:27
Matter.js 与 PixiJS/Three.js 集成:分离物理计算与渲染
2026-11-05 13:43:48
主流JS弹幕库选型指南:Danmaku.js等库的功能与体积对比
2026-11-05 09:28:19
JavaScript点击事件监听与交互效果实例
2026-11-05 09:10:19
自定义JS颜色选择器UI样式与交互细节
2026-11-05 09:09:06
