如何从未被HTML标记包围的字符串中删除文本?

时间:2013-11-13 01:01:26

标签: php html regex

所以基本上我有一个很大的刺痛(很少段落)。

我需要从此字符串中删除所有HTML标记所包围的的文字。

例如,这个字符串:

<h1>This is the title</h1>This is a bit of text with no HTML around it<p>This is within a paragraph tag</p>

应转换为:

<h1>This is the title</h1><p>This is within a paragraph tag</p>

我认为这最好用正则表达式来完成,虽然我对它的synax并不是很熟悉。

非常感谢所有帮助。


这是我最终使用的:

<?php
$string = '<h1>This is the title</h1>This is a bit of text with no HTML around it<p>This is within a paragraph tag</p>';
$pattern = '/(<\/[^>]+>)[^<]*(<[^>]+>)/';
$replacement = '$1$2';
echo preg_replace($pattern, $replacement, $string);
?>

1 个答案:

答案 0 :(得分:3)

您可以使用此正则表达式(<\/[^>]+>)[^<]*(<[^>]+>)并替换为$1$2 实时demo