php使用正则表达式去掉html中的注释方法


Posted in PHP onNovember 03, 2016

最近在项目中在需要输出浏览器中的源文件需要去掉html中的注释,在网上看了很多的方案,不过很多的答案都是一样的,并不能解决我的问题,于是就自己写正则表达式,也对正则有了更加深刻的理解。

首先比较基础的是:

$a = '<!--ceshi-->ceshi';
$a = preg_replace('#<!--.*-->#' , '' , $a);
var_dump($a);

上面的代码会输出ceshi。

但是如果是下面的字符串的话,就不能达到我们希望的效果了

$a = '<!--ceshi-->ceshi<!--ceshi-->';
$a = preg_replace('#<!--.*-->#' , '' , $a);
var_dump($a);

于是我们就把匹配规则改成如下的格式

preg_replace('#<!--.*?-->#' , '' , $a);

但是在html中如果有<!--[if lt IE 9]>ceshi<![endif]-->这样的代码的话是不能去掉的,所以我们需要改进匹配规则,改成以下的格式

preg_replace('#<!--[^\!\[]*?-->#' , '' , $a);

又接着如果html中有<script><!--ceshi//--></script>的代码,我们又需要改一下我们的匹配规则了,改成了以下格式

preg_replace('#<!--[^\!\[]*?(?<!\/\/)-->#' , '' , $a);

这样的话我基本上就去掉了我需要去掉的html的注释了!

以上就是小编为大家带来的php使用正则表达式去掉html中的注释方法全部内容了,希望大家多多支持三水点靠木~

PHP 相关文章推荐
php设计模式 Chain Of Responsibility (职责链模式)
Jun 26 PHP
php设计模式 Delegation(委托模式)
Jun 26 PHP
ThinkPHP添加更新标签的方法
Dec 05 PHP
yiic命令时提示“php.exe”不是内部或外部命令的解决方法
Dec 18 PHP
php打印一个边长为N的实心和空心菱型的方法
Mar 02 PHP
WordPress开发中用于标题显示的相关函数使用解析
Jan 07 PHP
PHP获取当前URL路径的处理方法(适用于多条件筛选列表)
Feb 10 PHP
php使用GD2绘制几何图形示例
Feb 15 PHP
PHP Trait代码复用类与多继承实现方法详解
Jun 17 PHP
PHP实现与java 通信的插件使用教程
Aug 11 PHP
Laravel 创建可以传递参数 Console服务的例子
Oct 14 PHP
PHP笛卡尔积实现原理及代码实例
Dec 09 PHP
使用正则去除php代码中的注释方法
Nov 03 #PHP
php cookie 详解使用实例
Nov 03 #PHP
PHP使用curl制作简易百度搜索
Nov 03 #PHP
php 防止表单重复提交两种实现方法
Nov 03 #PHP
PHP HTTP 认证实例详解
Nov 03 #PHP
php将print_r处理后的数据还原为原始数组的解决方法
Nov 02 #PHP
php实现HTML实体编号与非ASCII字符串相互转换类实例
Nov 02 #PHP
You might like
使用PHP和XSL stylesheets转换XML文档
2006/10/09 PHP
解析php中memcache的应用
2013/06/18 PHP
解析Ubuntu下crontab命令的用法
2013/06/24 PHP
php从数组中随机选择若干不重复元素的方法
2015/03/14 PHP
PHP数据对象PDO操作技巧小结
2016/09/27 PHP
php日志函数error_log用法实例分析
2019/09/23 PHP
javascript限制用户只能输汉字中文的方法
2014/11/20 Javascript
jQuery插件Skippr实现焦点图幻灯片特效
2015/04/12 Javascript
详解JavaScript中循环控制语句的用法
2015/06/03 Javascript
jQuery实现的超酷苹果风格图标滑出菜单效果代码
2015/09/16 Javascript
微信小程序 loading 详解及实例代码
2016/11/09 Javascript
EasyUI修改DateBox和DateTimeBox的默认日期格式示例
2017/01/18 Javascript
ES6中class类用法实例浅析
2017/04/06 Javascript
深入浅析JavaScript中的RegExp对象
2017/09/18 Javascript
jQuery实现的鼠标滚轮控制图片缩放功能实例
2017/10/14 jQuery
layui点击导航栏刷新tab页的示例代码
2018/08/14 Javascript
Angular 多模块项目构建过程
2020/02/13 Javascript
[02:28]DOTA2 2015国际邀请赛中国区预选赛首日现场百态
2015/05/26 DOTA
Python实现批量读取word中表格信息的方法
2015/07/30 Python
Python 25行代码实现的RSA算法详解
2018/04/10 Python
python 获取页面表格数据存放到csv中的方法
2018/12/26 Python
python简单实现AES加密和解密
2019/03/28 Python
自适应线性神经网络Adaline的python实现详解
2019/09/30 Python
Python 读取xml数据,cv2裁剪图片实例
2020/03/10 Python
利于python脚本编写可视化nmap和masscan的方法
2020/12/29 Python
面向中国市场的在线海淘美妆零售网站:Beauty House美丽屋
2021/03/02 全球购物
财务人员个人自荐信范文
2013/09/26 职场文书
师范生自荐信
2013/10/27 职场文书
技术副厂长岗位职责
2013/12/26 职场文书
二手书店创业计划书
2014/01/16 职场文书
保卫科工作岗位职责
2014/03/01 职场文书
幼儿教师培训感言
2014/03/08 职场文书
2014个人年终工作总结范文
2014/12/15 职场文书
网上祭英烈活动总结
2015/02/04 职场文书
恋恋笔记本观后感
2015/06/16 职场文书
JS实现九宫格拼图游戏
2022/06/28 Javascript