fparsec

    2热度

    1回答

    我目前正在学习FParsec库,但遇到了一个问题。当我想要解析一个可选字符串并继续正常解析时,FParsec将在可选解析器上返回一个致命错误,而不是像我期望的那样返回None。下面的工作代码示例说明了我的观点: open System open FParsec type AccountEntity = | Default | Entity of string let

    3热度

    1回答

    我需要在使用FParsec的OperatorPrecedenceParsers解析运算符时产生错​​误,特别是在映射阶段。假设我有以下代码: let pOperatorExpr : ExpressionParser = let opp = new OperatorPrecedenceParser<MyType, unit, unit>() let arithmeticOpera

    3热度

    1回答

    我正在实现一个解析器,该解析器为我的一个项目实现特定的域特定语言。 我遇到困难的一个方面是制作表达式(使用FParsec中的OperatorPrecedenceParser实现),使得整个表达式是可选的。 我已经实现了我的解析器OPP,其方式与网络中的许多示例非常相似。我也尝试在行尾注释中消耗空白的位置。尽管(尽管表达式和行尾注释都是可选的),但我的尝试似乎都不能在bot案例中工作。 具体来说(如

    1热度

    1回答

    我需要解析已经标记的UInt16 seq类型的流。 我怎样才能用FParsec做到这一点? 我可以在charstream s的参考书中找到所有顶级功能。 此刻我将UInt16 s转换为char这似乎很愚蠢。

    1热度

    1回答

    我想解析RFC 2822使用fparsec,但我无法处理与多行的标题:(它与下一个标题混淆): 这里是我最好的尝试:做你有任何提示? let str (s:string) = pstring s let stringLiteral = manySatisfy (fun c -> c <> ':' && c <> '\r' && c <> '\n') let ws = many (

    5热度

    2回答

    我希望使用F#将字符串解析为递归数据结构。在这个问题中,我将介绍一个简化的例子,切入我想要做的核心。 我想分析嵌套的方括号中的字符串中的记录类型: type Bracket = | Bracket of Bracket option 所以: “[]” - >Bracket None “[[]] “ - >Bracket (Some (Bracket None)) ”[[[]]]“ - >Bra

    1热度

    1回答

    所以我从FParsec示例运行下面的代码,但它似乎并不想运行。 namespace Test open FParsec.CharParsers module Stuff = let main = run pfloat "1.25E3" let str s = pstring s let floatBetweenBrackets = str "[" >>. pflo

    0热度

    1回答

    我刚开始使用Xamarin,并试图通过Nuget将此包'Optano Modeling'安装到我的Xamarin Forms解决方案中。但是在安装Optano建模时,我仍然收到这个错误。 '无法安装包'FParsec 1.0.1'。您正在尝试将此软件包安装到以'Xamarin.iOS,Version = v1.0'为目标的项目中,但该软件包不包含任何与该框架兼容的程序集引用或内容文件。有关更多信息

    3热度

    1回答

    我有一个像“abc,def,ghi”这样的用户输入文本。我想解析它得到的字符串列表为[“abc”,“def”]。 我试图 let str : Parser<_> = many1Chars (noneOf ",") let listParser : Parser<_> = many (str);; ,但它总是给我的第一个项目只有[ “ABC”。 “Def”和其他人不在结果列表中

    4热度

    1回答

    我想分析一些语法像GROUPBY TO USING条款如下 OUTPUT data GROUPBY key TO location USING object 顺序允许变化,但可能会出现最多一次每个条款。 是否有方便或内置的方式来解析FParsec中的这个?我阅读了一些提及Haskell Parsec的问题和答案。在FParsec中似乎没有排列。如果这是要走的路,我会怎样在FParsec中