问题标签 [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 投票
3 回答
2019 浏览

regex - 这种上下文无关文法是正则表达式吗?

我有一个语法定义如下:

A正则表达式吗?我对如何解释 BNF 语法感到困惑。

0 投票
2 回答
650 浏览

doctrine - 教义的 BNF 有什么用?

它看起来很乱,它是如何作为参考的?

http://www.doctrine-project.org/documentation/manual/1_1/en/dql-doctrine-query-language%3Abnf

0 投票
2 回答
17709 浏览

language-agnostic - 将 EBNF 转换为 BNF

我的计算机语言课已经有几年了,所以我已经忘记了 BNF 和 EBNF 的优点,而且我身边没有教科书。具体来说,我忘记了如何将 EBNF 转换为 BNF。

根据我的记忆,我知道其中一个要点是转换

进入

但我不记得其他规则。我试图在网上查找这个,但我只能找到指向作业问题的链接,或者关于用花括号转换术语的小评论。我找不到定义翻译的详尽规则列表。

0 投票
4 回答
889 浏览

java - Java 注释的语法

是否有描述 Java 注释语法的 BNF 或 EBNF?

0 投票
3 回答
2898 浏览

grammar - 使用 EBNF 或 BNF 编写递归下降解析器更容易吗?

我有一个用于语法的 BNF 和 EBNF。BNF 显然更冗长。就使用 BNF 构建递归下降解析器而言,我有一个相当不错的主意;有很多资源。我无法找到将 EBNF 转换为递归下降解析器的资源。是因为难度更大吗?我记得在我的 CS 理论课程中,我们学习了 EBNF,但我们没有将它们转换为递归下降解析器。我们确实将 BNF 转换为递归下降解析器。

我问的原因是因为 EBNF 更紧凑。

从总体上看 EBNF,我注意到包含在{和之间的术语}可以转换为while循环。是否有其他指导方针或规则?

0 投票
6 回答
9589 浏览

syntax - BNF vs EBNF vs ABNF:选择哪个?

我想提出一种语言语法。我已经阅读了一些关于这三个的内容,并且看不到任何一个人能做到而另一个人不能做到的事情。有什么理由使用一个而不是另一个?还是只是偏好问题?

0 投票
2 回答
1645 浏览

grammar - 如何正确形式化 GNU/Linux 命令的命令行用法?

我想写一个类似 BNF 的形式语法来描述一些 GNU/Linux 工具的命令行用法。例如,我可以将cat命令的用法描述为:

问题是我无法为某些命令(例如md5sum. 我的第一次尝试如下:

但是正如您所看到的,此语法允许您根据需要--check多次指定参数,这是不正确的,因为您应该最多使用一次。

我该如何解决?另外,为了更好地处理这类问题,我应该学习什么样的形式语法?

0 投票
3 回答
4165 浏览

python - 是否有适用于 Python 的标准词法分析器/解析器工具?

一项志愿工作需要我们将大量 LaTeX 文档转换为 ePub 文件格式。这是一系列开源小说书,迄今为止仅通过按需印刷服务在纸上制作。我们希望能够将图书提供给需要 ePub 格式才能获得最佳效果的图书阅读器设备(例如 Kindle)的用户。

幸运的是,ePub 是一种非常简单的格式,但是 LaTeX 没有简单的方法来生成所需的 XHTML 输出。

我们尝试了替代的 LaTeX 编译器(例如 plastex),但最终我们认为,简单地编写我们自己的编译器可能会容易得多,它可以理解 LaTeX 语言的一小部分并直接编译为 XHTML / ePub。

以前我在 Windows 上使用了一个名为 GOLD 的工具。这使我可以直接从 BNF 语法转到存根解析器。它还允许我用我喜欢的任何语言实现解析器。(我会选择 Python)。

该产品必须在 Linux 上运行,所以我想知道是否有一个等效的工具链可以在 Ubutnu / Eclipse / Python 下运行。我们的想法是我们将采用 TeX 的语法并只实现其中的一小部分,但我们不想花费大量时间来担心语法和解析。解析器生成器显然会为我们节省大量时间。

萨尔


更新 1:具有出色文档或教程的解决方案的奖励分数。


更新 2:如果有 TeX 的语法文件已经可用,则额外奖励,因为我所要做的就是实现我们关心的功能。

0 投票
1 回答
307 浏览

url - URL BNF 搜索部分没有意义

在基于 W3C 发布的URL BNF为 URL 实现 Java 正则表达式时,我无法理解搜索部分。如引述:

搜索声称它是由加号分隔的 xalphas 。正如safe所声称的那样, xalphas可以自己包含加号。因此,根据我的理解,它应该是:

我在这里错在哪里?

0 投票
2 回答
756 浏览

testing - 生成测试用例以自动滥用 BNF 语法

我想知道是否有一种工具或技术可以在给定 BNF 语法的情况下随机(但智能地)调整它并生成输出流以用于检测超出 BNF 的情况(但不应该)。

编辑:换句话说,模糊测试解析器。

谢谢