如何使用 wiky.js 将维基文本的有序列表解析为 HTML?

How to parse ordered list of wikitext to HTML using wiky.js?

我需要使用 wiky.js 将维基文本的有序列表解析为 html。这个 javascript 主要是使用正则表达式来做到这一点。

例如

# Item1
# Item2
# Item3
# Item4
## Sub-item 1
### Sub-sub-item

显示为

1.Item1
2.Item2
3.Item3
4.Item4
    1.Sub-item 1
       1. Sub-sub-item

我需要获取代码的 HTML 版本。目前wiky.js使用旧版本的解析有序列表,现在Wiki编辑器不支持。

添加以下内容:

{
    rex: /^((#*)[^#].*(\n))(?=#)/gm,
    tmplt: "<ol>"
},
{
    rex: /^((#+).*(\n))(?!|<ol)/gm,
    tmplt: "</ol>."
},
{
    rex: /#(?=(#+)\.#+\n(?!))/gm,
    tmplt: "</ol>"
},
{
    rex: /(<\/ol>)[#.]+/gm,
    tmplt: ""
},
{
    rex: /^((#+).*(\n))(?=[^#]|<\/ol)/gm,
    tmplt: "</li>"
},
{
    rex: /^(<\/ol>(\n)*)#+/gm,
    tmplt: "</li><li>"
},
{
    rex: /^#+/gm,
    tmplt: "<li>"
}

希望按照这个顺序执行。这将涵盖 <ol><li></li></ol> 标签的潜在无限递归级别。

我不向您解释代码,因为我使用了一些肮脏的权宜之计,其逻辑很难展开。