问题标签 [nearley]

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 投票
0 回答
35 浏览

parsing - 如何在没有循环的情况下编写近乎语法?

我正在尝试使用 nearley.js 为类似 ini 的文件编写解析,不同之处在于字符串值可能包含特殊的控制符号。例如 ^y 表示此符号后面的文本必须为黄色,^b - 蓝色,&i - 斜体。

我使用 Nearley 游乐场(http://omrelli.ug/nearley-playground/)并从非常基本的价值语法开始:

但是在几秒钟后我用随机文本(只是字母,比如“asdassad”)添加测试后,它给了我错误Possible infinite loop detected! Check your grammar for infinite recursion.

我究竟做错了什么?我只是看不到循环来自哪里。