fparsec

fparsec

文章 0 浏览 3

使用 FParsec 进行基本错误恢复

假设我有这个解析器: let test p str = match run p str with | Success(result, _, _) -> printfn "Success: %A" result | Failure(errorMsg, _, _)…

哆啦不做梦 2025-01-05 03:10:23 2 0

FParsec 中的尾递归

我遇到了具有两个递归分支的解析器的问题。为了更容易地演示这个问题,我使用了 Luca Bolognese 写的文章为例: ; ::= ; | | ::= 非空白字符序列 ::= …

久夏青 2025-01-05 00:32:57 1 0

如何使标识符解析器停止在 FParsec 中的 OperationPrecedenceParser 运算符上?

我正在实现一个会使用 unicode 符号的标识符名称解析器。我面临的问题是我有一些运算符也用 unicode 符号编写,这些运算符可能直接放在标识符之后,例…

澜川若宁 2025-01-04 11:14:17 0 0

使用 OperatorPrecedenceParser 通过 FParsec 解析函数应用程序?

这个问题类似于这个,但我想用函数应用程序解析表达式使用FParsec 中的OperatorPrecedenceParser。 这是我的 AST: type Expression = | Float of flo…

梦冥 2025-01-04 05:53:49 2 0

区分逻辑运算符和其他中缀运算符

我正在尝试解析 SQL 搜索条件,但无法让解析器区分逻辑(AND、OR)与其他中缀运算符。我将它们解析为不同的节点(也许这很难做到),但简化了评估阶段…

沒落の蓅哖 2025-01-03 22:06:37 2 0

使用 FParsec 解析字符串文字?

我想使用 FParsec 解析字符串文字。我所说的“字符串文字”是指在开始和结束引号之间的东西(在我的例子中 'Please, switch off your mobile phone' …

旧时模样 2025-01-03 15:26:40 2 0

解析 FParsec 中的数字

我已经开始学习 FParsec 了。它有一种非常灵活的解析数字的方式;我可以提供一组我想要使用的数字格式: type Number = | Numeral of int | Decimal o…

抠脚大汉 2025-01-03 01:13:50 2 0

FParsec 中的示例语法超出了示例范围?

我正在寻找一些用 FParsec 编写的示例语法,这些语法超出了项目存储库中的示例。 我发现这个非常好 GLSL 语法,但这是我找到的唯一示例。我需要的是类…

久光 2025-01-01 00:02:52 3 0

FParsec 中的同步匹配

如果我尝试将以下内容解析为 lines 和 fields。行由 '\n' 分隔,字段由 '|' 分隔。 abcd|efgh|ijkl mnopq\|rst|uvwxy za|bcd efg|hijk|lmnop 我可以定…

安静被遗忘 2024-12-21 11:41:36 4 0

使用 FParsec 解析可选多行表达式

我正在为这种形式的字符串编写一个 FParsec 解析器: do[ n times]([ action] | \n([action]\n)*endDo) 换句话说,这是一个带有可选时间量词的“do”…

千纸鹤带着心事 2024-12-21 08:05:39 1 0

如何使用 FParsec 解析注释

我正在尝试使用 FParsec 从 s 表达式语言解析 lisp 风格的注释。我在上一个线程中解析单行注释方面得到了一些帮助 - 如何转换一个 FParsec 解析器来解…

丶情人眼里出诗心の 2024-12-20 05:48:03 2 0

我应该使用 Workflow 还是 fsYacc?

我有一个非常简单的 DSL,需要在 .Net 平台上解析。我对解析器的经验不是很丰富,因此一直在查看使用 F#(fsLex、fsYacc、FParsec)的示例。我对 F# …

北城挽邺 2024-12-07 23:51:50 4 0

如何为 .NET Compact Framework 构建 FParsec?

我正在编写一个基于 FParsec 的小型应用程序。 今天,我正在寻找机会制作 Compact Framework 的版本。 显然,为 .NET CF 构建 FParsec 源代码并不是那…

浮生未歇 2024-12-07 07:49:03 4 0

FParsec 默认错误消息

假设我正在定义以下解析器: let identifier = many1Satisfy isLetter //match an identifier let parser = identifier //our parser is only to matc…

葬心 2024-12-01 13:29:19 5 0

使用 FParsec 解析方法参数

我正在尝试使用 FParsec 实现方法参数解析器。 我想知道 FParsec 本身是否有一些已经实现的功能可以帮助我实现此目的?我问这个问题是因为 FParsec 在…

风筝有风,海豚有海 2024-12-01 09:34:38 7 0
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文