我一直想知道为什么似乎没有任何解析器,例如BNF,在各种库中表现得像正则表达式.
当然,像ANTLR,Yacc和许多其他产生代码的东西反过来可以解析CFG,但似乎没有一个库可以在没有中间步骤的情况下做到这一点.
我有兴趣编写一个Packrat解析器,启动所有那些与regexp相关的嵌套 - 括号 - 怪癖(对于它的运动,甚至可能更多),但不知怎的,我有这种感觉,我只是走进另一个停滞不前的问题 - 像沼泽一样.
这些解析器是否存在技术/理论上的限制,或者我只是遗漏了什么?
regex parsing context-free-grammar
context-free-grammar ×1
parsing ×1
regex ×1