php使用正则去除宽高样式
来源:互联网 发布:音效软件哪个最好 编辑:程序博客网 时间:2024/06/02 02:20
因工作需要,需要采集html,并把html内容保存到数据库中。为了避免影响使用,宽高样式需要删除。例如图片和div中的width, height等。
不过采集到的html中,样式的写法各有不同,例如大小写,中间有空格等。
因此使用php正则编写了下面这个方法,对这些奇葩的样式进行过滤。
代码如下:
<?php/** * 清除宽高样式 * @param String $content 内容 * @return String */function clear_wh($content){ $config = array('width', 'height'); foreach($config as $v){ $content = preg_replace('/'.$v.'\s*=\s*\d+\s*/i', '', $content); $content = preg_replace('/'.$v.'\s*=\s*.+?["\']/i', '', $content); $content = preg_replace('/'.$v.'\s*:\s*\d+\s*px\s*;?/i', '', $content); } return $content;}?>
演示:
<?php$html = <<<HTML<div style="text-align:center" width="500" height="300"> <div style="Width : 100px ; Height: 100 px;"> <img src="/images/test.jpg" width=400 height = 200> <div style="float:left; width: 100px; height : 200 px;"></div> </div> <div style="width : 100 px ;height: 100px"> <img src="/images/test.jpg" width=400 height = 200> </div></div>HTML;echo '<xmp>';echo '原内容:'.PHP_EOL;echo $html.PHP_EOL.PHP_EOL;echo '过滤后内容:'.PHP_EOL;echo clear_wh($html);echo '</xmp>';?>
输出:
原内容:<div style="text-align:center" width="500" height="300"> <div style="Width : 100px ; Height: 100 px;"> <img src="/images/test.jpg" width=400 height = 200> <div style="float:left; width: 100px; height : 200 px;"></div> </div> <div style="width : 100 px ;height: 100px"> <img src="/images/test.jpg" width=400 height = 200> </div></div>过滤后内容:<div style="text-align:center" > <div style=" "> <img src="/images/test.jpg" > <div style="float:left; "></div> </div> <div style=""> <img src="/images/test.jpg" > </div></div>
阅读全文
1 0
- php使用正则去除宽高样式
- PHP去除html的宽高属性的正则表达式
- php去除html,css,js样式
- php 去除html标签 和 css样式
- php 正则 去除[]和[]中的内容
- php 正则表达去除空格跟换行
- 正则去除php代码中的注释
- php正则去除文章页标签范例
- Openlayer高阶样式使用
- 使用正则匹配去除重复字段
- Python:使用正则去除HTML标签
- Python:使用正则去除HTML标签
- js去除空格,使用了正则表达式
- java使用正则去除html标签
- PHP--正则表达式和样式匹配--小记
- php里如何用正则表达式去除空白行
- php使用正则表达式
- php 正则表达式使用
- STM32-GPIO输入
- spring_SSH整合之_三个常见问题
- 虚拟内存的作用
- 绘图小例子
- STL中map用法详解
- php使用正则去除宽高样式
- bzoj1367 sequence
- Python 简单爬虫的样例(获取拉钩网Python的职位)
- opencv3_java 图像Mat画图 Mat
- 自定义MVC(配图解)
- HDU
- 循环神经网络(RNN, Recurrent Neural Networks)介绍
- 找到一本不错的Linux电子书,附《Linux就该这么学》章节目录。
- 封装offsetTop、offsetLeft