删除html中前后不对的td标签 如:</td><td>

作者:enenba | 发表于:2012-01-01 23:09 | 分类:正则表达式

比如从后台提交上来了一段内容:
<td>内容</td><td>内容</td><td>内容<I>内容内容内容内容</td><td></I></td>

想用正则把<I></I>标签中的<td></td>内容
<I></I>这个标签不止一处 还有很多 只替换<I></I>标签之内的</td><td>

像这样的就删除掉

<td>内容</td><td>内容</td><td>内容<I>内容内容内容内容</td><td></I></td>

 

也就是删除html中前后不对的td标签并且在i标签中

 

 

<?php
$html='<td>内容</td><td>内容</td><td>内容<I>1内容内容内容内容</td><td>2内容内</I></td>';
$pattern = '/<I>(.*?)(<\/td><td>)(.*?)<\/I>/i';
$data = preg_replace($pattern,"<I>\\1\\3</I>",$html);
echo $data;
?>


 

 

 输出为:

 <td>内容</td><td>内容</td><td>内容<I>1内容内容内容内容2内容内</I></td>

上一篇: php采集CSS文件名   |   下一篇:PHP正则匹配字符串并高亮显示» 标签: php源码 正则匹配

评论:

2012-03-14 10:00

百度知道都有一样的一堆问题。