如何删除空标签

时间:2016-07-28 21:28:41

标签: php regex tags preg-replace

我使用的是Summernote插件,所以每当我写任何内容时,都会继续创建像这样的空标签

<b><br></b><br></p><br><p><b><br></b><br></p><p><br></p><p><br></p>

如何删除这些空标记,因为这些标记会在页面中占据整个空白区域

这是我迄今为止尝试过的事情

function remove_empty_tags_recursive ($str, $repto = NULL)
{
    //** Return if string not given or empty.
    if (!is_string ($str)
        || trim ($str) == '')
            return $str;

    //** Recursive empty HTML tags.
    return preg_replace (

        //** Pattern written by Junaid Atari.
        '/<([^<\/>]*)>([\s]*?|(?R))<\/\1>/imsU',

        //** Replace with nothing if string empty.
        !is_string ($repto) ? '' : $repto,

        //** Source string
        $str
    );
}

以上功能仅过滤那些类似<p></p>的标记 这不会过滤<p><br></p>

我发现这篇文章也是RegEx match open tags except XHTML self-contained tags,但它与查找特定标签

完全不同

0 个答案:

没有答案