8得票1回答
在flex中匹配EOF但却进入无限循环

我需要在flex中匹配EOF。 这是我的代码lex.l的主要错误部分。 %{ %} %% <<EOF>> {printf("match EOF\n");} %% int main(){ yylex(); } 我使用 flex lex.l ; gcc...

8得票2回答
如何在Windows上使用Flex

如果我的问题很愚蠢请见谅,因为我对这个工具没有任何经验并且想知道是否正确地使用它。我已经下载了Flex工具,通过编译词法分析器生成一个C文件,然后需要单独进行编译。这是最好的方法吗?

8得票4回答
Flex:使用文本文件作为输入流

我使用flex从lex代码生成了一个c文件,然后使用gcc创建了相应的实际解析器.exe。但是,我无法弄清楚如何让它从除了我自己键入的输入以外的任何地方读取数据。我正在尝试解析一个庞大的词典文件。有人能帮忙吗?

8得票4回答
在同一个应用程序中使用两个或更多的Lex/Yacc解析器是否可行?

我有一个应用程序,已经有了一种语法的解析器,我需要为另一个目的添加第二个不同的语法。 是否可以有多个解析器? 如果可以,如何获得另一个入口点? 谢谢。 david allan finch

8得票1回答
用于Common Lisp的词法分析器和解析器生成器

你能推荐一些适用于Common Lisp的词法分析器和语法分析器生成器吗?我在CLiki上看到了以下列表,但是大多数都处于alpha测试阶段: http://www.cliki.net/LEXER http://www.cliki.net/parser%20generator 如果你能...

7得票1回答
使用转义字符的 Flex / Lex 编码字符串

以下是一些背景信息的参考: 在flex / lex中用于字符串字面值的正则表达式 我遇到的问题是在我的词法分析器中处理带有转义字符的输入,我认为这可能与字符串的编码有关,但我不确定。 以下是我在词法分析器中处理字符串字面值的方法: \"(\\.|[^\\"])*\" { ...

7得票1回答
文件名.l:16:在行为内遇到了EOF。

我有一个像这样的lex文件 %{ #include "y.tab.h" %} %% "print" {return print;} "exit" {return exit_command;} [a-zA-Z] ...

7得票7回答
动态解析器

有没有一种解析器可以在运行时生成AST/语法树?就像一个库,可以接受EBNF语法或类似的字符串,并输出数据结构? 我知道antlr、jlex等工具,它们生成的源代码可以做到这一点。(不想跳过编译步骤) 我知道Boost::Spirit,它使用C++语法的黑魔法在执行时生成这些内容(非常接近...

7得票5回答
多个flex/bison解析器

什么是在项目中处理多个Flex/Bison解析器的最佳方法? 我编写了一个解析器,现在我需要在同一项目中使用第二个解析器。到目前为止,在parser1.y的第三部分中,我插入了main(..)方法并从那里调用了yyparse。 我想要实现的是拥有两个不同的解析器(parser1.y和par...

7得票1回答
使用Ocamllex进行字符串词法分析(Tiger编译器)

我将尝试跟随Appel的《现代编译器实现》一书,使用Ocamllex编写词法分析器。规范要求词法分析器在翻译转义序列后返回字符串。以下代码是ocamllex输入文件的摘录: rule tiger = parse ... | '"' { let buffer = Buffer....