gpt4 book ai didi

正则表达式 - 将 HTML 转换为 ol 标签的 Markdown

转载 作者:行者123 更新时间:2023-12-02 03:22:59 26 4
gpt4 key购买 nike

一段时间以来,我一直在为这个正则表达式而苦苦挣扎。我正在尝试传输一些 HTML 以进行标记。

我有这个代码:

`"<ol>
<li>This is a new list</li>
<ol>
<li>Embedded List</li>
<li>Embedded List</li>
</ol>
</ol>"`

我需要为所有 <li> 添加 4 个空格在两个<ol>所以只是第二个 <li>元素需要 4 个空格。

伪代码中的正则表达式是 find all <li>以 "<ol> 任何字符和 <ol> 开头。

这是我到目前为止尝试过的(?<=\"<ol>\r\n)(?<=[A-Za-z]<ol>\r\n)<li>但没有运气。这甚至可以使用正则表达式吗?

最佳答案

你可以使用

(<li[^<]*>)([^>]*<\/li>)(?=(?![\s\S]*?<ol[^<]*>)[\s\S]*?<\/ol>)

替换为$1 $2 .参见 demo

正则表达式匹配

  • (<li[^<]*>) - 匹配并捕获开口 li节点
  • ([^>]*<\/li>) - 匹配和捕获 li节点内容和结束li节点
  • (?=(?![\s\S]*?<ol[^<]*>)[\s\S]*?<\/ol>) - 检查是否有任何文本和关闭 ol节点,但没有开口 ol标签在它之前。

免责声明:Regex 并非用于解析 HTML,而是使用适当的解析器。当前的正则表达式只是为了表明它可以处理您提供的样本输入。

关于正则表达式 - 将 HTML 转换为 ol 标签的 Markdown,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31995713/

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