使用PHP去除特定的跨度标记

时间:2011-11-09 07:30:07

标签: php

  

可能重复:
  PHP Strip_tags for div with a specific ID?

我有一个包含两种span标记的字符串。一种类型的id以关键字“junk_”开头。另一种类型,但有一些随机ID。我想要做的是使用preg_replace去掉只有“junk_”span标签及其内容。我仍然希望保持其他跨度。这是我的字符串

<span id="bla">This is a test</span>. 
<span id="junk_74">Please</span> remove <span id="junk_75">all</span> junk spans.

我想要的输出应该如下:

<span id="bla">This is a test</span>. remove junk spans.

非常感谢任何帮助。

1 个答案:

答案 0 :(得分:2)

$sHtml = preg_replace('/<span[^>]+id="junk_[^"]*"[^>]*>(.*?)<\/span>/s', '', $sHtml);

另见example