问题标签 [fastparse]
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.
scala - 如何避免 Fastparse 中的左递归无限循环?
我有一个在 Scala Packrat 解析器组合器中运行良好的解析器。我想用 Fastparse 库更快地尝试一些东西。但是,它不能处理左递归无限循环。有什么标准的方法来应对吗?
scala - fastparse.P[Any] => fastparse.P[Unit] 没有可用的隐式视图
我正在阅读 fastparse 的教程/解释,并收到错误消息
对于序列示例。
我正在使用 sbt 1.3.8 和 scala 2.13.1。fastparse 的定义版本是 2.2.2。
这个错误是什么意思,我做错了什么/我怎样才能在没有错误的情况下结束这个教程步骤?
regex - 如何编写解析器来解析 fastparse 中的引用正则表达式?
我希望解析的是用双引号引用的任何正则表达式。例如,“([AZ]+[AZ]+[C])”
到目前为止,我在 Scala 中使用 fastparse 库尝试过以下内容:
但这会引发异常:
到目前为止我所理解的是,正则表达式解析器也在使用最后一个双引号。但我无法弄清楚如何避免这种情况!我认为我们需要编写某种前瞻,并以某种方式避免解析最后一个字符,但不确定如何执行此操作。
请帮忙。
scala - 是否有适用于字符串标记而不是字符的 Scala 解析解决方案?
我有一个文档,我想一次解析一行。我的标记是整行:
我可以将上面的内容与语法(伪代码)相匹配,例如:
我想要的是将每一行作为令牌独立发送到解析器并尝试匹配它,但是到目前为止我尝试过的每个解决方案(scala-parser-combinators、FastParse等)都需要我用附加换行符以便正确地将其分开。显然,我实际上并不希望我的语法知道换行符;它们应该用于在输入到达解析器之前对其进行标记。
是否有兼容 Scala 的解析解决方案可以以这种方式逐行工作,从而使换行符完全从我的语法定义中消失?(有人可以给我看一个简单的例子吗?)