gpt4 book ai didi

php - 如何使用正则表达式检测 PHP 中的列表或枚举

转载 作者:行者123 更新时间:2023-12-03 23:25:01 26 4
gpt4 key购买 nike

我正在从 XML 提要中获取数据。我无法控制提要及其内容。

有时,数据包含列表/枚举。我想将其解析为干净的 HTML 无序列表。

我收到的数据格式如下:

<p>Some text in a paragraph tag</p>
<p>
- List item one <br>
- List-item-two<br>
-List item three <br>
- Listitem four<br>
</p>
<p>Another paragraph with text, and maybe even more paragraphs after this one!
They might even contain - dashes - - - or <br><br> breaks!</p>

请注意,并非每个列表项的格式都整齐。有些包含 <br> 之间的尾随步伐标记或破折号和文本之间。

如何在 PHP 中进行后处理以获得此结果:

<p>Some text in a paragraph tag</p>
<p><ul>
<li>List item one</li>
<li>List-item-two</li>
<li>List item three</li>
<li>Listitem four</li>
</ul></p>
<p>Another paragraph with text, and maybe even more paragraphs after this one!
They might even contain - dashes - - - or <br><br> breaks!</p>

我可以用正则表达式来做吗?如果是这样,它会是什么样子?

最佳答案

是的,我认为正则表达式是一个很好的起点。看看preg_replace

正则表达式可能是这样的(未测试):

$li = preg_replace('/^-([a-z]+)(<br>)?$/i', '<li>$1</li>', $entry);

当然这是行不通的(你需要支持空格等等),但我想你明白了。

关于php - 如何使用正则表达式检测 PHP 中的列表或枚举,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21707720/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com