形式语法是一组生成规则,描述如何形成有效语法的字符串。形式语法最常用于指定编程语言的语法。
我知道如何解析这样的语法。E -> E '*' E E -> E '+' E E -> N N -> '0' N -> '1' 但是如果我有下面的语法例子(有一个 "regex重述")。E -> 'e' S ...
我对Xtext相当陌生,所以我可能问错了问题,或者使用了错误的术语。请在回复中牢记这一点。我正试图实现JBehave EBNF Spec ...
如果不能用LR(1)解析器解析c++,gccclang如何解析?
GCCClang是手写的解析器。我看过一个帖子,说C++不能用LR(1)解析器解析(为什么C++不能用LR(1)解析器解析?如果是这样,怎么GCCClang都是手写的 ...
我是一个写语法的新手(准确的说是第一次),我想创建一个可以返回基本逻辑语句AST的语法。到目前为止,我已经有了一个可以处理AND、OR...的语法。
当我想测试我的EBNF语法时,我遇到了错误。AttributeError: 'tuple' object has no attribute 'asjson' Code : if not filename or filename == '-': text = sys.stdin.read() else: ...
我需要处理一个平面文本文件,我试图用antlr4生成一个解析器。文件的格式如下。文件可以包含多条记录 每行为一条记录 每条记录...
我正在写一个Lisp到C的翻译器,我有一个处理字符串的问题。这是一段将单利斯普函数转换为C语言等价函数的代码: define(F) --> fun_unary(F),!fun_unary(F) ...
我目前正在尝试创建一个LL解析器。然而,我已经有了BNF语法,但我必须在AST之前创建,我有几个问题。AST和LL解析器的区别是什么?
我正在写一个类似YAML的序列化格式的语法。我使用的是LALR解析器。我在解析标量的时候遇到了一个障碍。一个标量可以是一个字符串或一个数字(让我们保持简单,让它 ...
在Aho等人的《编译器。原理、技术和工具》第305页中说 "终端可以有合成属性,但不能有继承属性。" 我的纠结是:如果合成属性......
ANTLR4终止于Lexer / Parser错误Python
我想知道在发现不匹配时如何阻止词法分析器或解析器运行。例如,如果词法分析程序期望一个“。”我希望它不继续恢复模式。
我的代码中有以下语法。规则0 S'->程序规则1写->写LPAREN expression_list RPAREN SEMICOLON规则2读->读LPAREN expression_list RPAREN ...
我想问一个问题,以消除语法中的左因子分解和递归。我过去曾解决过此类问题,但其中的语法看起来确实很棘手,这超出了我的...
制作正则表达式NFA ^ [a-zA-Z0-9] {3,16} $
我正在尝试制作正则表达式NFA ^ [a-zA-Z0-9] {3,16} $。我了解到此正则表达式意味着该语言将只接受长度为3到16的字符串,其中可能包括a到z,A到Z或0到9。我已经...
这是for语句的语法:FOR x> 0 {// //声音} //或FOR x = 0; x> 0; x ++ {// somthing},它具有相同的前缀FOR,我想在...
练习4.2.8来自“编译器-原理,技术和工具”(又名Dragon Book)
一段时间以来,我一直在努力解决这个问题。这是练习的文本:图4.7中的语法生成单个数字标识符的声明;这些声明...
这是一个作业分配问题,我知道我没有正确回答。我给出了:S->''表示S产生空字符串。我知道空集和空字符串不是...
为什么JFlap无法从我的计算器语法构建可用的LL(1)解析器?
我在JFlap中输入了以下语法:E→TK K→+ TK K→λT→FM M→* FM M→λF→i F→(E)并尝试解析i *(i + i)。我确定LL(1)语法正确,并且输入字符串应该...
在有关如何使用C#编写WebSocket服务器的Mozilla开发人员指南中,我在js客户端部分中找到了这两行代码。 https://developer.mozilla.org/zh-CN/docs/Web/API/WebSockets_API / ...