如何编写一个从不匹配任何内容的 LPeg 模式



有没有办法创建一个总是无法匹配任何东西的 LPeg 模式?我不是在谈论匹配空字符串,我说的是一种总是失败的模式,所以如果你把它放在有序的选择中,它总是会回退到第二个选项。

这样做的原因是我正在用 LPEG 编写一个小解析器,我希望我能写

 operators = empty_pattern + "==" + "~=" + "<=" + ">=" + "<" + ">"

而不是

 operators = lpeg.P("==") + "~=" + "<=" + ">=" + "<" + ">"
lpeg.P( false )

最简单的方法。

如果参数是布尔值,则结果是一个始终成功或始终失败(根据布尔值(的模式,而不消耗任何输入。

相关内容

  • 没有找到相关文章

最新更新