-1

我需要你的帮助来去除<del>标签<script><style>标签块,例如

Input:

<style type="text/css">
   <del>p</del>
    {
    color:red;
     }
</style>

Output: 

<style type="text/css">
      p
      {
      color:red;
      }
</style>

脚本标签也是如此。基本上我想<del>从脚本标签和样式标签块中删除标签。

4

2 回答 2

0

在 PHP 中:

$text = '<style type="text/css"> <del>p</del> { color:red; } </style>';
$pattern = '/<\/?del>/g';
$replacement = '';
echo preg_replace($pattern, $replacement, $text);

编辑

要专门针对样式标签内的事件:

$text = '<style type="text/css"> <del>p</del> { color:red; } </style>';
$pattern = '/(<(?:style|script).*)(<del>)(.*)(<\/del>)(.*<\/(?:style|script)>)/g'
$replacement = '$1$3$5';
preg_replace($pattern, $replacement, $text);

没有这么多通配符,可能有一种更简洁的方法,但这可以完成工作。我没有在 PHP 中测试过它,但它在 JavaScript 中运行良好。你可以对样式标签做同样的事情

于 2013-10-03T08:23:28.400 回答
0

使用sed命令:

sed 's/<del>\(.*\)</del>/\1/g' yourFile.html
于 2013-10-03T08:14:19.053 回答