gpt4 book ai didi

regex - 为什么在线解析器似乎停止在正则表达式?

转载 作者:行者123 更新时间:2023-12-04 14:21:24 25 4
gpt4 key购买 nike

我一直想知道为什么似乎没有任何解析器,比如 BNF ,其行为类似于各种库中的正则表达式。

当然,还有 ANTLR 之类的东西, Yacc以及许多其他生成代码的代码,这些代码反过来又可以解析 CFG ,但似乎没有一个库可以在没有中间步骤的情况下做到这一点。

我有兴趣写一个 Packrat parser , 启动所有与正则表达式相关的嵌套括号怪癖(也许更是如此,因为它的运动),但不知何故,我有这种感觉,我只是走进另一个停止问题 - 像沼泽类。

这些解析器是否存在技术/理论限制,或者我只是遗漏了什么?

最佳答案

我认为这更像是一种文化。上下文无关文法的使用主要限于编译器,编译器通常具有与每个产生式规则相关联的代码。在某些语言中,输出代码比模拟回调更容易。在其他情况下,您会看到解析器库:例如,Haskell 中的解析器组合器。另一方面,正则表达式在诸如 grep 之类的工具中得到广泛使用,在这种工具中,每次用户给出新的正则表达式时都运行 C 编译器很不方便。

关于regex - 为什么在线解析器似乎停止在正则表达式?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/803515/

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