忽略 Scala 组合器解析器中的 C 风格注释
让我的解析器尊重(忽略)C 风格注释的最简单方法是什么?我对两种评论类型都感兴趣,但也欢迎仅针对一种类型的解决方案。 我目前只是扩展 JavaTokenP…
如何对 Scala 解析器组合器结果进行模式匹配
我们有一个多线程 RPC 服务器来解析输入字符串。我们遇到了 Scala 的解析器组合器库不是多线程安全的问题: Parsers.scala 用于任何解析。我们在这一…
Scala 解析器组合器,行尾失败
我正在尝试在 Scala 中为 图标编程语言 构建一个解释器。现在我正在为其设置一个解析器。 到目前为止我编写的代码是: package interpreter import sc…
scala.util.parsing.ast.Binders 应该如何使用?
我目前正在 Scala 中实现一个小型编译器,当我进行上下文分析组件时,我发现了包 scala.util.parsing.ast 中的特征 Binders (我是使用 Scala 2.9 RC…
使用 Scala 解析器组合器解析 CSV 文件
我正在尝试使用 Scala 解析器组合器编写 CSV 解析器。语法基于 RFC4180。我想出了以下代码。它几乎可以工作,但我无法让它正确分隔不同的记录。我错过…
使用标准模式解析 CharSequence 中的日期
我正在为外部工具的命令行界面编写一个解析器,并且正在使用 Scala 的解析器组合器库。作为此过程的一部分,我需要解析格式为 EEE MMM d HH:mm:ss yyy…
关于Java语法中修饰符的问题
Java 语法定义了 ModifiersOpt: { 修饰符 }。 修饰符被定义为public、protected、private、static等之一...。{x}表示零次或多次出现x。 我们知道 pub…
如何编写一个正则表达式来匹配所有不是 '$' 的字符接下来是“i”;或'{'?
意思是,我想匹配: $10 或, $ 但不是这个: ${name} 或: $image{http://wrfgadgadga.com/gadgad.png} 我还想匹配其他所有内容...普通字符、符号、…
将标签附加到 Scala 中的不可变案例类
我试图为一种小型语言创建一个解析器,其中包含标签和 goto 等命令: ... lazy val cmds = opt("{")~>rep(cmd<~opt(""))<~opt("}") ^^ {...} la…
方法“|”中解析器的预期类型
我针对 scala 2.8.0 编译了以下代码: import scala.util.parsing.combinator.{syntactical,PackratParsers} import syntactical.StandardTokenParser…
Scala 解析器组合器递归 bnf 的技巧?
我试图匹配这个语法: pgm ::= exprs exprs ::= expr [ exprs] expr ::= ID | expr . [0-9]+ 我的 scala packrat 解析器组合器看起来像这样: import …
从 Scala 解析器组合器中过滤标记
使用 Scala 解析器组合器时,如何过滤从词法分析器到解析器的标记序列? 让我解释一下 - 假设我有一个相当标准的词法分析器(扩展 StdLexical)和解析…