regex 对项目使用preg_replace正则表达式< ul>< li>

x4shl7ld  于 2022-11-18  发布在  其他
关注(0)|答案(1)|浏览(103)

所以我试着从一个API获取新闻,到目前为止一切都很好,除了我在格式上遇到了一些问题。
在API中,新闻是JSON格式的,我已经在页面上看到了它们,除了<ul><li>项之外,它看起来还不错

当使用列表时,点会在文本上,因为它关闭了标签后的权利。我一直在谷歌搜索了一段时间,我还没有找到一个合适的解决方案,使用列表风格没有帮助。
下面是我用于列表项的preg_replace:

/*[list]*/
    $tmpText = preg_replace('#\[list\](.*)\[/list\]#isU', '<ul>$1</ul>', $tmpText);

    /*[*]*/
    $tmpText = preg_replace('#\[[*]](.*)#isU', '<li>$1</li>', $tmpText);

这是我得到的页面上的输出:

<ul>
<li></li> Halloween content implementation
<li></li> Barber implementation and polishing
<li></li> Additional work on modular vehicles
<li></li> Finishing touches on the ATM interface
<li></li> Implementation of halloween gestures
<li></li> Final preparations for permadeath testing
<li></li> Creation and implementation of new admin commands
<li></li> Additional work on the farming system
<li></li> Bugfixing
</ul>

我真的不知道如何解决这个问题,或者我将如何获得标签之间的文本,因为它的输入总是不同的,我会感谢一些提示

qxsslcnc

qxsslcnc1#

别介意我刚刚解决了我自己的问题,我在这里有一个巨大的大脑放屁。
这是我想到的解决方案

/*[list]*/
$tmpText = preg_replace('#\[list\](.*)\[/list\]#isU', '<ul>$1</li></ul>', $tmpText);
/*[*]*/
$tmpText = preg_replace('#\[[*]](.*)#isU', '<li>$1', $tmpText);

相关问题