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 相关文章推荐
wiki-shan写的php在线加密的解密程序
Sep 07 PHP
Php Cookie的一个使用注意点
Nov 08 PHP
探讨多键值cookie(php中cookie存取数组)的详解
Jun 06 PHP
PHP读取大文件的类SplFileObject使用介绍
Apr 09 PHP
php实现的Timer页面运行时间监测类
Sep 24 PHP
7个鲜为人知却非常实用的PHP函数
Jul 01 PHP
Symfony2学习笔记之插件格式分析
Mar 17 PHP
PHP  实现等比压缩图片尺寸和大小实例代码
Oct 08 PHP
PHP简单判断iPhone、iPad、Android及PC设备的方法
Oct 11 PHP
PHP解压ZIP文件到指定文件夹的方法
Nov 17 PHP
CodeIgniter框架验证码类库文件与用法示例
Mar 18 PHP
PhpStorm 如何优雅的调试Hyperf的方法步骤
Nov 24 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猴子选大王问题解决方法
2015/05/12 PHP
PHP实现的堆排序算法详解
2017/08/17 PHP
Laravel框架Eloquent ORM修改数据操作示例
2019/12/03 PHP
php并发加锁问题分析与设计代码实例讲解
2021/02/26 PHP
游戏人文件夹程序 ver 3.0
2006/07/14 Javascript
JObj预览一个JS的框架
2008/03/13 Javascript
jQuery 瀑布流 浮动布局(一)(延迟AJAX加载图片)
2012/05/23 Javascript
探讨jQuery的ajax使用场景(c#)
2013/12/03 Javascript
jQuery截取指定长度字符串的实现原理及代码
2014/07/01 Javascript
javascript 获取浏览器版本
2015/01/21 Javascript
基于jquery实现select选择框内容左右移动添加删除代码分享
2015/08/25 Javascript
解决angular的post请求后SpringMVC后台接收不到参数值问题的方法
2015/12/10 Javascript
简单谈谈json跨域
2016/03/13 Javascript
JavaScript实现DOM对象选择器
2016/09/24 Javascript
在vue项目中正确使用iconfont的方法
2018/09/28 Javascript
解决vue2 在mounted函数无法获取prop中的变量问题
2018/11/15 Javascript
js实现弹出框的拖拽效果实例代码详解
2019/04/16 Javascript
JavaScript工具库MyTools详解
2020/01/01 Javascript
JavaScript 实现下雪特效的示例代码
2020/09/09 Javascript
[40:56]2018DOTA2亚洲邀请赛 3.31 小组赛 A组 Liquid vs TNC
2018/04/01 DOTA
python新手经常遇到的17个错误分析
2014/07/30 Python
Python使用urllib2模块实现断点续传下载的方法
2015/06/17 Python
Python装饰器使用实例:验证参数合法性
2015/06/24 Python
Python编程实现微信企业号文本消息推送功能示例
2017/08/21 Python
pandas object格式转float64格式的方法
2018/04/10 Python
python读取有密码的zip压缩文件实例
2019/02/08 Python
Python单元测试与测试用例简析
2019/11/09 Python
django 模版关闭转义方式
2020/05/14 Python
Python实现计算图像RGB均值方式
2020/06/04 Python
通过实例解析Python RPC实现原理及方法
2020/07/07 Python
如何在发生故障的节点上重新安装 SQL Server
2013/03/14 面试题
装潢设计专业推荐信模板
2013/11/26 职场文书
企业出纳岗位职责
2014/03/12 职场文书
艺术节主持词
2014/04/02 职场文书
超市优秀员工获奖感言
2014/08/15 职场文书
幼儿园端午节活动总结
2015/05/05 职场文书