PHP正则表达式过滤html标签属性(DEMO)


Posted in PHP onMay 04, 2016

过滤html标签在php中可以有内置的函数了,但它过滤的太干净了,我们就整理了一下些利用正则来过滤指定html标签的例子,具体如下所示。

采集的时候有时候需要过滤掉多余的标签属性,比如 img标签过滤掉除了src属性之外的所有属性例如删除titile alt等属性以及一些脚的onclick属性等。

例如

过滤除了src之外的所有属性:

$str= preg_replace('/\s(?!src)[a-zA-Z]+=[\'\"]{1}[^\'\"]+[\'\"]{1}/iu',' $str);

上面的实例代码是过滤掉除了src属性外的所有标签属性.

过滤设置过滤除了alt和src之外的所有属性

代码如下:

$str = preg_replace('/\s(?!(src|alt))[a-zA-Z]+=[^\s]*/iu',' ', $str);

过滤所有html标签的属性的正则表达式:

$str = preg_replace("/<([a-z]+)[^>]*>/i","",$str );

只过滤alt属性的正则表达式:

(\s)alt=[^\s]*

过滤所有html标签的属性的正则表达式:

$search = array ("'<script[^>]*?>.*?</script>'si", // 去掉 javascript 

"'<[\/\!]*?[^<>]*?>'si", // 去掉 HTML 标记 

"'([\r\n])[\s]+'", // 去掉空白字符 

"'&(quot|#34);'i", // 替换 HTML 实体 

"'&(amp|#38);'i", 

"'&(lt|#60);'i", 

"'&(gt|#62);'i", 

"'&(nbsp|#160);'i" 

); // 作为 PHP 代码运行 

$replace = array ("","","\\1","\"","&","<",">"," "); 

$html = preg_replace($search, $replace, $html);
PHP 相关文章推荐
PHP的FTP学习(二)[转自奥索]
Oct 09 PHP
用PHP调用Oracle存储过程
Oct 09 PHP
php下HTTP Response中的Chunked编码实现方法
Nov 19 PHP
微信支付开发教程(一)微信支付URL配置
May 28 PHP
PHP的cURL库简介及使用示例
Feb 06 PHP
解决PHP里大量数据循环时内存耗尽的方法
Oct 10 PHP
php5.4传引用时报错问题分析
Jan 22 PHP
PHP strip_tags保留多个HTML标签的方法
May 22 PHP
手把手编写PHP框架 深入了解MVC运行流程
Sep 19 PHP
PHPExcel中文帮助手册|PHPExcel使用方法(分享)
Jun 09 PHP
PHP日志LOG类定义与用法示例
Sep 06 PHP
laravel框架模型、视图与控制器简单操作示例
Oct 10 PHP
Joomla使用Apache重写模式的方法
May 04 #PHP
Joomla开启SEF的方法
May 04 #PHP
Joomla简单判断用户是否登录的方法
May 04 #PHP
Joomla实现组件中弹出一个模式(modal)窗口的方法
May 04 #PHP
joomla组件开发入门教程
May 04 #PHP
Yii2前后台分离及migrate使用(七)
May 04 #PHP
微信公众平台DEMO(PHP)
May 04 #PHP
You might like
php stream_get_meta_data返回值
2013/09/29 PHP
php计算整个目录大小的方法
2015/06/01 PHP
CodeIgniter集成smarty的方法详解
2016/05/26 PHP
laravel 字段格式化 modle 字段类型转换方法
2019/09/30 PHP
js onpropertychange输入框 事件获取属性
2009/03/26 Javascript
Javascript对象属性方法汇总
2013/11/21 Javascript
两种方法实现在HTML页面加载完毕后运行某个js
2014/06/16 Javascript
使用 js+正则表达式为关键词添加链接
2014/11/11 Javascript
js选项卡的实现方法
2015/02/09 Javascript
搞定immutable.js详细说明
2016/05/02 Javascript
jquery插件方式实现table查询功能的简单实例
2016/06/06 Javascript
JavaScript直播评论发弹幕切图功能点集合效果代码
2016/06/26 Javascript
Express下采用bcryptjs进行密码加密的方法
2018/02/07 Javascript
vue2.0+koa2+mongodb实现注册登录
2018/04/10 Javascript
详解mpvue中小程序自定义导航组件开发指南
2019/02/11 Javascript
JavaScript实现汉字转换为拼音及缩写的方法示例
2019/03/28 Javascript
JS快速实现简单计算器
2020/04/08 Javascript
Python中logging模块的用法实例
2014/09/29 Python
用tensorflow搭建CNN的方法
2018/03/05 Python
利用Pyhton中的requests包进行网页访问测试的方法
2018/12/26 Python
Python matplotlib画图与中文设置操作实例分析
2019/04/23 Python
Pandas删除数据的几种情况(小结)
2019/06/21 Python
Python读取csv文件实例解析
2019/12/30 Python
使用Python实现Wake On Lan远程开机功能
2020/01/22 Python
Python通过文本和图片生成词云图
2020/05/21 Python
python import 上级目录的导入
2020/11/03 Python
python 实现波浪滤镜特效
2020/12/02 Python
计算机专业个人求职信范例
2013/09/23 职场文书
大专生自我鉴定范文
2013/10/01 职场文书
校运会口号
2014/06/18 职场文书
先进教育工作者事迹材料
2014/12/23 职场文书
优秀小学生事迹材料
2014/12/26 职场文书
开学第一周总结
2015/07/16 职场文书
24句精辟的现实社会语录,句句扎心,道尽人性
2019/08/29 职场文书
Django实现翻页的示例代码
2021/05/24 Python
SQL Server表分区降低运维和维护成本
2022/04/08 SQL Server