flex-lexer

    6热度

    4回答

    我有一个应用程序,我已经有一种解析器用于某种语法,并且需要为另一个目的添加另一个不同的语法。 是否有可能有多个? 如果是的话,你如何获得另一个入口点? 感谢 大卫艾伦·芬奇

    7热度

    3回答

    在flex中,我想为正则表达式的一个匹配返回多个标记。有没有办法做到这一点?

    5热度

    5回答

    我有一个需要使用flex和野牛的学校项目。我想使用C++,以便可以访问STL和我自己写的类。我们提供了下面的Makefile: CC = gcc CFLAGS = -g OBJs = parse.tab.o symtab.o attr.o lex.yy.o default: parser parser: ${OBJs} ${CC} ${CFLAGS} ${OBJs} -o

    49热度

    7回答

    我想创建一个使用flex/bison分析器的读取 - 评估打印循环。麻烦的是,flex生成的词法分析器需要FILE *类型的输入,我希望它是char *。无论如何要做到这一点? 一个建议是创建一个管道,为其提供字符串并打开文件描述符并发送给词法分析器。这很简单,但它感觉很复杂,不是很平台独立。有没有更好的办法?

    1热度

    2回答

    我有这个工作定义: IDENTIFIER [a-zA-Z][a-zA-Z0-9]* 我不想不断重复的[A-ZA-Z]和[0-9],所以我做了两个新的定义 DIGIT [0-9] VALID [a-zA-Z] 我怎么能改写的识别规则采用数字和有效定义? 我不知道该怎么做“老二”的比赛,我在这里坚持: IDENTIFIER {VALID}[{VALID}{DIGIT}]* // This s

    2热度

    2回答

    我正在使用Flex生成的C解析器和Bison生成的C++解析器。我已经修改了解析器以仅截取字符串输入。 我在循环中调用解析器函数yyparse(),并逐行阅读用户输入。如果输入“退出”,我停止循环。 我面临的问题是,当输入不符合任何规则,然后解析器突然停止,并在下一次迭代开始在相同的状态,期待停止的规则(由于语法错误)完成。 如果输入有效且匹配解析器规则,那么它工作正常。 语法错误我重新定义了yy

    3热度

    4回答

    我无法弄清楚这一点。我可以从gnuwin32下载一个flex2.5.4a的win32二进制文件,但是我想用Visual Studio 2005构建最新版本(2.5.35)。我想我可以用cygwin构建,但是那里的乐趣在哪里?