问题标签 [lex]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
lex - lex程序错误?
我正在制作这个非常简单的 lex 程序(只是一个介绍性程序)。但是在编译 lex.yy.c 时,我得到这个错误:
因为我已经在指定的结构中定义了 top,所以我无法为这个错误提出任何理由。你能看出什么原因吗?
c - flex,定义字符
我想定义 char(即 'a AND 'a'),但在检查错误时遇到问题。这里我如何编写规则并检查:
代码
最后检查一下:
python - Python编程语言的词法分析
有谁知道 Python 的 FLEX 或 LEX 规范文件在哪里?例如,这是 ANSI C 编程语言的 lex 规范:http ://www.quut.com/c/ANSI-C-grammar-l-1998.html
仅供参考,我正在尝试将代码突出显示写入 Cocoa 应用程序。正则表达式不会这样做,因为我还希望语法解析来折叠代码并识别块。
yacc - 野牛文件结尾
如果我忘记在任何文件的末尾放置一个空行,我的程序就会出现语法错误。问题是我的语法需要换行符来结束当前行。由于不存在换行符,因此野牛会生成语法错误,因为它没有完成规则。
我该如何解决这个问题?我尝试<<EOF>>
返回MY_EOF
但当我这样做时 lex 崩溃了一个可怕的死亡。我猜它的默认 EOF 中有我没有调用的代码。我不知道它们可能是什么功能。使用 EOF 创建错误symbol EOF is used, but is not defined as a token and has no rules
c - 如何在c中调用flex解析器
如何在 c 中调用 flex 解析器?
lex - 我可以在运行时定义弹性令牌吗?
我想使用 lex/yacc 读取分隔的文本文件。这对于解析器来说是非常微不足道的东西,但是不同的文本文件有不同的分隔符,所以我想让用户指定文本是否由制表符、空格、逗号、管道、unicode snowmen等分隔。
使用这些工具的正常方式是为 lex 和 yacc 编写规范,编译,然后使用静态代码进行解析。但是有没有办法让用户在运行时指定分隔符(从而重新定义标记)?
我目前正在使用 flex/bison,但我愿意接受小型便携式替代方案的建议。
c - 在 lex 中如何使 yyin 指向具有 yacc 中主要功能的文件?
我将传递给 yacc 中 main 的参数存储在一个文件中。现在我希望 lex 从这个文件而不是终端读取它的输入。我知道我可以将 yyin 指向类似的文件,yyin = fopen("fn","r");
但这仅在 main 位于 lex 中时才有效。当我在 yacc 的 main 中使用这个 yyin 声明时,它显示一个错误,所以请提出一些解决这个问题的建议。
regex - 了解正则表达式是否适合构建语言?
我正在阅读O'Reilly 的Flex & Bison,想知道事先学习正则表达式是否有助于开发编程语言?
c - 在 Lex 的输入文件中插入文本(使用 C)
我正试图帮助一位朋友完成大学作业,但我有点忘记了很多 C 和 Lex。
问题是,我们正在尝试解析 HTML 和对应的 CSS 文件并将其样式添加到标签中。
例如:
HTML
CSS
修改后的 HTML
所有的正则表达式都完成了,宏也完成了。
问题:输入的 HTML 和修改后的 HTML 必须是同一个文件。我们尝试将yyin和yyout重定向到同一个文件...然后使用 fputs(text, yyout); 其中 text 是带有所有样式信息(和 style="")的 char *。它不起作用。
所以……你们能帮帮他吗?
重要的是不要丢失文件中的位置概念(因此 style="" 转到正确的标签)。
谢谢
c - 在 Lex 中解析命令行参数
假设我希望我的 Lex 和 Yacc 程序解析命令行参数,例如:
我想让 lex 解析字符串“显示内存”。我该如何做到这一点?