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 相关文章推荐
第七节 类的静态成员 [7]
Oct 09 PHP
图书管理程序(二)
Oct 09 PHP
php源码加密 仿微盾PHP加密专家(PHPCodeLock)
May 06 PHP
zen cart新进商品的随机排序修改方法
Sep 10 PHP
php数组添加元素方法小结
Dec 20 PHP
用php守护另一个php进程的例子
Feb 13 PHP
php计算两个整数的最大公约数常用算法小结
Mar 05 PHP
PHP超全局数组(Superglobals)介绍
Jul 01 PHP
php metaphone()函数及php localeconv() 函数实例解析
May 15 PHP
yii2 modal弹窗之ActiveForm ajax表单异步验证
Jun 13 PHP
php代码调试利器firephp安装与使用方法分析
Aug 21 PHP
php输出形式实例整理
May 05 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_xmlhttp 乱码问题解决方法
2009/08/07 PHP
THINKPHP+JS实现缩放图片式截图的实现
2010/03/07 PHP
php开发留言板的CRUD(增,删,改,查)操作
2012/04/19 PHP
PHP生成验证码时“图像因其本身有错无法显示”的解决方法
2013/08/07 PHP
php的socket编程详解
2016/11/20 PHP
浅析PHP中的闭包和匿名函数
2017/12/25 PHP
php获取微信openid方法总结
2019/10/10 PHP
php实现的证件照换底色功能示例【人像抠图/换背景图】
2020/05/29 PHP
一个简单的javascript类定义例子
2009/09/12 Javascript
有效的捕获JavaScript焦点的方法小结
2009/10/08 Javascript
javascript document.compatMode兼容性
2010/02/23 Javascript
基于jQuery的模仿新浪微博时间的组件
2011/10/04 Javascript
我的Node.js学习之路(三)--node.js作用、回调、同步和异步代码 以及事件循环
2014/07/06 Javascript
微信小程序实现滚动消息通知
2018/02/02 Javascript
解决Layui 表单提交数据为空的问题
2018/08/15 Javascript
vue.js 输入框输入值自动过滤特殊字符替换中问标点操作
2020/08/31 Javascript
在Vue中使用Echarts实例图的方法实例
2020/10/10 Javascript
Python基于Flask框架配置依赖包信息的项目迁移部署
2018/03/02 Python
Python实现的远程文件自动打包并下载功能示例
2019/07/12 Python
你的自行车健身专家:FaFit24
2016/11/16 全球购物
英国派对礼服和连衣裙购物网站:TFNC London
2018/07/07 全球购物
法国春天百货官网:Printemps.com
2020/06/29 全球购物
饮料业务员岗位职责
2013/12/15 职场文书
政法大学毕业生自荐信范文
2014/01/01 职场文书
档案接收函
2014/01/13 职场文书
入学生会自荐书范文
2014/02/05 职场文书
亮化工程实施方案
2014/03/17 职场文书
公司合作意向书
2014/04/01 职场文书
新郎结婚保证书
2015/02/26 职场文书
企业财务人员岗位职责
2015/04/14 职场文书
植树节新闻稿
2015/07/17 职场文书
小学主题班会教案
2015/08/17 职场文书
2015年乡镇组织委员工作总结
2015/10/23 职场文书
《认识钟表》教学反思
2016/02/16 职场文书
MySQL系列之十四 MySQL的高可用实现
2021/07/02 MySQL
Python+Pillow+Pytesseract实现验证码识别
2022/05/11 Python