问题标签 [bnf]

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.

0 投票
1 回答
244 浏览

java - 是否有生成不需要生成解析器运行时的 DSL 解析器的工具?

我目前正在使用 DSL 做很多工作,想知道是否有人知道可以为我的 bnf 规范生成不需要运行时库(纯 java 源解析器)的解析器的工具?

我致力于将 XTEXT 用于未来的 Eclipse 插件,但我需要为我的库本身提供一个不错的小版本,并且不想添加另一个 jar 依赖项。

似乎 ANTLR 需要运行时来解析文件,我执行了谷歌搜索但无济于事。任何人都可以帮忙吗?

谢谢,

克里斯

0 投票
2 回答
523 浏览

c - C中的字符串操作

我正在帮助我的侄子完成他的 C 实验室作业,这是一个字符串操作作业并应用了 Wang 的算法。

这是输入的 BNF 表示。

在 C 中处理和解析这种输入的最佳实践是什么?如何在不使用的情况下解析此结构struct?提前致谢。

0 投票
1 回答
2440 浏览

parsing - BNF 处理转义序列

我使用这个 BNF 来解析我的脚本:

它可以正确地将以下文本解析为树结构

我的问题是,如何处理字符串文字中的转义序列:

0 投票
2 回答
133 浏览

syntax - 这种符号的名称是什么?

JSON 网站使用非常清晰的符号来描述 JSON 的语法:

http://www.json.org/object.gif
(来源:json.org

这种符号的名称是什么?这只是 BNF 的图形表示还是它有自己的名字?

0 投票
1 回答
405 浏览

parsing - 逗号分隔的函数调用参数的解析器表达式

我正在编写一个解析器,它可以解析像myfunc1(),myfunc2(param1)myfunc3(param1, param2)(带有未知数量的参数)这样的表达式。现在我正试图让我的解析表达式正确。我正在使用Lemon Parser Generator。这是我想出的:

暂时不要介意花括号的内容。该params定义允许空参数(彼此之后的几个分隔符),目前可以。但是我将如何更改定义以强制非空参数但仍然让所有参数由SEPARATOR令牌分隔?

0 投票
2 回答
881 浏览

language-agnostic - Turbo Pascal 的 BNF / EBNF(最好是 5.5 或更高版本,因为 OOP)?

你们有谁知道 Turbo Pascal 的 BNF 或 EBNF 是否在某处可用(合法!!)?

0 投票
1 回答
3394 浏览

antlr - ANTLR,如何在 ANTLR 中转换 BNF、EBNF 数据?

我必须生成 CSV 数据的解析器。不知何故,我设法为 CSV 数据编写了 BNF、EBNF,但我不知道如何将其转换为 ANTLR 语法(这是一个解析器生成器)。例如,在 EBNF 中,我们编写:

但是当我在 ANTLR 中编写它来生成解析器时,它给出了一个错误并且不带括号。我不是ANTLR专家,有人可以帮忙吗?

0 投票
1 回答
1087 浏览

parsing - 我可以改进这个 GOLD 解析器语法吗?

我必须解析一个看起来像这样的文件:

我有一个从头开始编写的解析器,但它有一些我无法追踪的错误,我想如果将来格式发生变化,它会很难维护。我决定改用 GOLD 解析系统来生成解析器。我的语法如下所示:

没有错误,它可以很好地解析我的 2000 行测试文件。但是,这是我第一次编写自定义语法,所以我不确定我是否做得正确。

我可以对上面的语法进行任何改进吗?

0 投票
1 回答
349 浏览

concurrency - 在巴科斯-瑙尔形式中,定义符号时逗号“,”是什么意思

我对 Pi-Calculus 的了解与对 Backus Naur Form 的了解一样多。这是 Pi Calculus 的核心 BNF 之一(在 Peter Sewell 的“Applied Pi - A Brief Tutorial”中找到)

事实上,我专注于学习 Pi 微积分。但我确实想知道 BNF 定义中 P,Q ::= 的含义。

我会理解 P ::= 意味着 Pi 演算的过程 P 是这个或这个或这个。但是 P,Q ::= 代表什么?

0 投票
3 回答
996 浏览

bnf - HL7 2.5 的完整 BNF 语法

我只是想知道是否有人拥有 HL7 2.5 的完整 BNF?我希望使用黄金解析器引擎编译它,但很乐意从 EBNF 或供应商特定的 BNF 转换。