【发布时间】:2011-04-12 19:03:47
【问题描述】:
所以我需要去除tip 类的span 标签。
所以那将是<span class="tip"> 和相应的</span>,以及其中的所有内容......
我怀疑需要一个正则表达式,但我非常讨厌这个。
笑...
<?php
$string = 'April 15, 2003';
$pattern = '/(\w+) (\d+), (\d+)/i';
$replacement = '${1}1,$3';
echo preg_replace($pattern, $replacement, $string);
?>
没有错误...但是
<?php
$str = preg_replace('<span class="tip">.+</span>', "", '<span class="rss-title"></span><span class="rss-link">linkylink</span><span class="rss-id"></span><span class="rss-content"></span><span class=\"rss-newpost\"></span>');
echo $str;
?>
给我错误:
Warning: preg_replace() [function.preg-replace]: Unknown modifier '.' in <A FILE> on line 4
以前,错误出现在第二行的);,但现在.... >.>
【问题讨论】:
-
嗯,正确的方法是使用 DOM 解析器 - 它也适用于您的“以及其中的所有内容”要求。
-
Recursively loop through the DOM tree and remove unwanted tags? 的可能副本我冒昧地将其标记为副本,即使它不是一个 100%。您必须在删除之前测试所需的标签和类名。
-
那不好。该方法不允许我检查课程。而且我无法删除所有
spans。 -
你在说什么?当然,该方法允许您检查类。
if $node->class == "tip" ...我不明白为什么它不应该删除所有spans`?
标签: php