所以我在这里有一个字符串(我写的是随机的,实际的字符串可以是任何东西,可以包含任何/所有HTML标记):
$my_str = "<p>Lorem ipsum</p><i:f>hello</i:f><div>some other text</div><qe></qe>"
我需要删除所有非 HTML标记,因此必须删除<i:f>
和<qe>
,但其余部分必须保留。
我完全意识到,我可以只使用strip_tags()
函数并只填写我需要保留的所有标签(除非有人提供更优雅的解决方案,否则我将这样做),因为填写{使用所有有效的HTML5标签标记{1}}并不是最好的方法。
示例:
$allowed_tags
那么关于更优雅的解决方案有什么想法吗?
谢谢。 蒂姆
答案 0 :(得分:0)
您可以这样处理
$my_str = "<p>Lorem ipsum</p><i:f>hello</i:f><div>some other text</div><qe></qe>";
echo preg_replace("/(<\s*\/?\s*\b(qe|i:f)\b[^>]*\/?\s*>)/i", "", $my_str)