preg_replace函数删除HTML标签问题
问题描述:
这是一个非常愚蠢的错误是什么,我在我的HTML做的,其实,我有很多的preg_replace函数删除HTML标签问题
<li class="MsoNormal" style="margin:0in 0in 0pt">
<span style="font-family:'Calibri','sans-serif';font-size:11pt">May be required to work extra hours at month end to meet monthly deadlines. .</span>
</li>
我要替换像李所有这些标签,是横跨 - 所以输出将
“ - 可能是需要在月底加班,以满足每月的最后期限。”
我使用此代码
$a = preg_replace('/(<li[^>]*><span[^>]*>)(.*?)(<\/span><\/li>)/imsU',"-$2",$a);
但它无法正常工作。请建议。
在此先感谢
答
您的换行符不存在于您的正则表达式中。尤其是标签之间。正确的正则表达式是:
$a = preg_replace('/(<li[^>]*>(?:[\s]*)<span[^>]*>)(.*?)(<\/span>(?:[\s]*)<\/li>)/imsU', "-$2", $a);
?:
在这里留下的第二场比赛仍然秒。 (这就是所谓的非捕获分组)
答
你尝试strip_tags()
?这是一个简单的方法做你想要什么,我想......
你''和''之间 – madfriend 2012-07-20 12:06:07
换行符如果我请求任何帮助,为什么有人给它标志着负然后 – 2012-07-20 12:06:42
我怎么会处理该换行符 – 2012-07-20 12:07:11