对于 Markdown 我想说的是:
The parser consumes a .tm file.
Run Code Online (Sandbox Code Playgroud)
但是(在我的 GitHub readme.md markdown 文件中)并且还在我的 mac 上使用 Markdown Pro,markdown 想让 tm 成为上标 TM 商标符号。我已经在不同位置尝试过反斜杠 .\tm、.\t\m、.(tm) 等,但最终我只是在输出文本中使用斜杠。有谁知道这应该如何运作?
当我输入此内容时,我可以看到 stackoverflow 正在使用 markdown,但我没有得到这种行为!呃?洞察力赞赏!
我正在尝试解析逗号分隔的列表。为了简单起见,我只使用数字。这些表达式是有效的:
(1,4,3)
()
(4)
我可以想到两种方法来做到这一点,我想知道为什么失败的例子不起作用。我相信它是正确的 BNF,但我无法让它像 PEG 一样工作。谁能准确解释为什么吗?我试图更好地理解 PEG 解析逻辑。
我正在使用在线浏览器解析器生成器进行测试: https: //pegjs.org/online
这不起作用:
list = '(' some_digits? ')'
some_digits = digit / ', ' some_digits
digit = [0-9]
Run Code Online (Sandbox Code Playgroud)
(实际上,它解析得很好,喜欢 () 或 (1),但不识别 (1, 2)
但这确实有效:
list = '(' some_digits? ')'
some_digits = digit another_digit*
another_digit = ', ' digit
digit = [0-9]
Run Code Online (Sandbox Code Playgroud)
这是为什么?(语法新手看这里)