php过滤HTML标签、属性等正则表达式汇总


Posted in PHP onSeptember 22, 2014
$str=preg_replace("/\s+/", " ", $str); //过滤多余回车
$str=preg_replace("/<[ ]+/si","<",$str); //过滤<__("<"号后面带空格)
 
$str=preg_replace("/<\!--.*?-->/si","",$str); //注释
$str=preg_replace("/<(\!.*?)>/si","",$str); //过滤DOCTYPE
$str=preg_replace("/<(\/?html.*?)>/si","",$str); //过滤html标签
$str=preg_replace("/<(\/?head.*?)>/si","",$str); //过滤head标签
$str=preg_replace("/<(\/?meta.*?)>/si","",$str); //过滤meta标签
$str=preg_replace("/<(\/?body.*?)>/si","",$str); //过滤body标签
$str=preg_replace("/<(\/?link.*?)>/si","",$str); //过滤link标签
$str=preg_replace("/<(\/?form.*?)>/si","",$str); //过滤form标签
$str=preg_replace("/cookie/si","COOKIE",$str); //过滤COOKIE标签
 
$str=preg_replace("/<(applet.*?)>(.*?)<(\/applet.*?)>/si","",$str); //过滤applet标签
$str=preg_replace("/<(\/?applet.*?)>/si","",$str); //过滤applet标签
 
$str=preg_replace("/<(style.*?)>(.*?)<(\/style.*?)>/si","",$str); //过滤style标签
$str=preg_replace("/<(\/?style.*?)>/si","",$str); //过滤style标签
 
$str=preg_replace("/<(title.*?)>(.*?)<(\/title.*?)>/si","",$str); //过滤title标签
$str=preg_replace("/<(\/?title.*?)>/si","",$str); //过滤title标签
 
$str=preg_replace("/<(object.*?)>(.*?)<(\/object.*?)>/si","",$str); //过滤object标签
$str=preg_replace("/<(\/?objec.*?)>/si","",$str); //过滤object标签
 
$str=preg_replace("/<(noframes.*?)>(.*?)<(\/noframes.*?)>/si","",$str); //过滤noframes标签
$str=preg_replace("/<(\/?noframes.*?)>/si","",$str); //过滤noframes标签
 
$str=preg_replace("/<(i?frame.*?)>(.*?)<(\/i?frame.*?)>/si","",$str); //过滤frame标签
$str=preg_replace("/<(\/?i?frame.*?)>/si","",$str); //过滤frame标签
 
$str=preg_replace("/<(script.*?)>(.*?)<(\/script.*?)>/si","",$str); //过滤script标签
$str=preg_replace("/<(\/?script.*?)>/si","",$str); //过滤script标签
$str=preg_replace("/javascript/si","Javascript",$str); //过滤script标签
$str=preg_replace("/vbscript/si","Vbscript",$str); //过滤script标签
$str=preg_replace("/on([a-z]+)\s*=/si","On\\1=",$str); //过滤script标签
$str=preg_replace("/&#/si","&#",$str); //过滤script标签,如javAsCript:alert(

清除空格,换行

function DeleteHtml($str)
{
$str = trim($str);
$str = strip_tags($str,"");
$str = ereg_replace("\t","",$str);
$str = ereg_replace("\r\n","",$str);
$str = ereg_replace("\r","",$str);
$str = ereg_replace("\n","",$str);
$str = ereg_replace(" "," ",$str);
return trim($str);
}

过滤HTML属性

1,过滤所有html标签的正则表达式:

 

</?[^>]+>

 

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

 

$html = preg_replace("/<([a-zA-Z]+)[^>]*>/","<\\1>",$html);

3,过滤部分html标签的正则表达式的排除式(比如排除<p>,即不过滤<p>):
</?[^pP/>]+>

4,过滤部分html标签的正则表达式的枚举式(比如需要过滤<a><p><b>等):
</?[aApPbB][^>]*>

5,过滤部分html标签的属性的正则表达式的排除式(比如排除alt属性,即不过滤alt属性):
\s(?!alt)[a-zA-Z]+=[^\s]*

6,过滤部分html标签的属性的正则表达式的枚举式(比如alt属性):
(\s)alt=[^\s]*
PHP 相关文章推荐
Zend Guard一些常见问题解答
Sep 11 PHP
火车头discuz6.1 完美采集的php接口文件
Sep 13 PHP
解决File size limit exceeded 错误的方法
Jun 14 PHP
php5.3 goto函数介绍和示例
Mar 21 PHP
Win7下手动安装apache2.2、php5.4笔记
Apr 03 PHP
PHP SPL标准库之数据结构堆(SplHeap)简单使用实例
May 12 PHP
php多线程实现方法及用法实例详解
Oct 26 PHP
通过PHP自带的服务器来查看正则匹配结果的方法
Dec 24 PHP
浅谈PHP的数据库接口和技术
Dec 09 PHP
yii插入数据库防并发的简单代码
May 27 PHP
laravel框架中视图的基本使用方法分析
Nov 23 PHP
PHP 判断字符串是中文还是英文, 或者是中英混合
Mar 09 PHP
PHP中exec与system用法区别分析
Sep 22 #PHP
PHP-Java-Bridge使用笔记
Sep 22 #PHP
11个PHPer必须要了解的编程规范
Sep 22 #PHP
PHP正则替换函数preg_replace和preg_replace_callback使用总结
Sep 22 #PHP
php分页函数完整实例代码
Sep 22 #PHP
php中file_get_content 和curl以及fopen 效率分析
Sep 19 #PHP
PHP return语句另类用法不止是在函数中
Sep 17 #PHP
You might like
php类
2006/11/27 PHP
解析php5配置使用pdo
2013/07/03 PHP
php实现parent调用父类的构造方法与被覆写的方法
2015/02/11 PHP
php获取系统变量方法小结
2015/05/29 PHP
Yii2验证器(Validator)用法分析
2016/07/23 PHP
laravel框架中表单请求类型和CSRF防护实例分析
2019/11/23 PHP
TP5框架model常见操作示例小结【增删改查、聚合、时间戳、软删除等】
2020/04/05 PHP
jQuery Clone Bug解决代码
2010/12/22 Javascript
JQuery结合CSS操作打印样式的方法
2013/12/24 Javascript
在Ubuntu系统上安装Node.JS的教程
2015/10/15 Javascript
js判断复选框是否选中及选中个数的实现代码
2016/05/30 Javascript
利用jquery实现验证输入的是否是数字、小数,包含保留几位小数
2016/12/07 Javascript
深入理解JavaScript继承的多种方式和优缺点
2017/05/12 Javascript
微信小程序仿美团城市选择
2018/06/06 Javascript
vue生命周期实例小结
2018/08/15 Javascript
vue elementUI 表单校验的实现代码(多层嵌套)
2019/11/06 Javascript
详解Nuxt.js 实战集锦
2019/11/19 Javascript
Vue实现购物车实例代码两则
2020/05/30 Javascript
解决Vue项目中tff报错的问题
2020/10/21 Javascript
[01:03:59]2018DOTA2亚洲邀请赛3月30日 小组赛B组VGJ.T VS Secret
2018/03/31 DOTA
[01:09:20]NB vs NAVI Supermajor小组赛A组 BO3 第二场 6.2
2018/06/03 DOTA
Python之Web框架Django项目搭建全过程
2017/05/02 Python
对python中的乘法dot和对应分量相乘multiply详解
2018/11/14 Python
Python开发之身份证验证库id_validator验证身份证号合法性及根据身份证号返回住址年龄等信息
2020/03/20 Python
详解如何通过H5(浏览器/WebView/其他)唤起本地app
2017/12/11 HTML / CSS
将SVG图引入到HTML页面的实现
2019/09/20 HTML / CSS
西班牙最大的婴儿用品网上商店:Bebitus
2019/05/30 全球购物
妇产科护士自我鉴定
2013/10/15 职场文书
公务员个人自我评价分享
2013/11/06 职场文书
中班幼儿评语大全
2014/04/30 职场文书
个性婚礼策划方案
2014/05/17 职场文书
防灾减灾宣传标语
2014/10/07 职场文书
投诉信范文
2015/07/02 职场文书
2016高考感言
2015/08/01 职场文书
Python中OpenCV实现简单车牌字符切割
2021/06/11 Python
JavaScript parseInt0.0000005打印5原理解析
2022/07/23 Javascript