用空格替换<p>标签</p>

时间:2015-01-29 16:57:46

标签: php html

我有一个包含标记加载的字符串,包括<p>标记,其中一些包含类名和其他属性

...<span><strong><p class="pp">Text.</p></strong><p class="ppp">More Text.</p><spa...

我想删除所有标记并将<p>类替换为空格字符。当我单独使用strip_tags()时,我的输出是

Text.MoreText.

我想要

Text. MoreText.

我正在考虑使用striptags($string, '<p>')保留<p>代码,但除了使用正则表达式然后“剥离”<p>代码并替换之外,我找不到任何解决方案用空格关闭</p>标记。我相信这很容易出错。

3 个答案:

答案 0 :(得分:0)

我可能会使用</p>来获得您想要的结果:

$string = strip_tags(str_replace('</p>', ' ', $string));

答案 1 :(得分:0)

使用striptags后的快速解决方案:

echo str_replace('.','. ','Text.MoreText.');

答案 2 :(得分:0)

我认为使用正则表达式是最好和最整洁的解决方案,只需尝试以下内容:

$string = $string.replace(/<\/p\s*>/, ' ').replace(/<\/?[^>]+>/gm, '');
  1. 替换</p>标记,留空以留出空白;
  2. 剥离所有标签。
  3.   

    注意:使用正则表达式更灵活,可以在某些特殊情况下更准确地替换;

    </p >字符后面留空p?正则表达式比你想象的更有用,更容易。