如何抗拒订购?

2024-01-01

给定表单输入A,B,C其中顺序不固定(例如C,B,A也可能),我如何将字符串解析为元组(a,b,c)以便再次对结果进行排序?

更大的例子:

Input A:

A 1
B 2
C 3

Input B:

C 3
B 2
A 1

Parsers:

a = "A " *> decimal
b = "B " *> decimal
c = "C " *> decimal

我如何编写一个解析器来给出(1,2,3)对于输入 A 和 B。

编辑:我必须更准确:它们并不都是小数......否则choice将是这里选择的组合器。


您可以使用文本.秒差距.Perm http://hackage.haskell.org/packages/archive/parsec/3.1.3/doc/html/Text-Parsec-Perm.html:

{-# LANGUAGE TupleSections, NoMonomorphismRestriction #-}

import Text.Parsec
import Text.Parsec.Perm
import Control.Applicative

a = ...
b = ...
c = ...

p = permute ( 
      (,,) <$$> a <||> b <||> c)
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

如何抗拒订购? 的相关文章

  • 机器和管道(或其他类似的库)之间的概念区别是什么?

    我想学习这个概念 以便我能够理解和使用诸如machines http hackage haskell org package machines 我试着跟随R nar Bjarnason 关于机器的演讲 https dl dropbox co
  • 移动列表中特定元素的简单函数

    我是 Haskell 的新手 我正在尝试弄清楚如何创建一个函数 shift Eq a gt a gt a gt Int gt a shift x h t z 输入 一个通用列表和一个相同类型的元素 x 前提条件 元素x存在于列表中 Outp
  • 在 Haskell 中阅读 GraphML

    我正在尝试将包含单个有向图的 GraphML 文件读入 HaskellData Graph http hackage haskell org package containers 0 2 0 1 docs Data Graph html为了
  • Haskell 中的异构多态性(正确方法)

    让一个模块来抽象Area操作 错误的定义 class Area someShapeType where area someShapeType gt Float module utilities sumAreas Area someShape
  • 是否可以列出派生 Generic 的记录数据类型中字段的名称和类型?

    我知道对于派生 Data Data 的数据类型 constrFields http hackage haskell org package base 4 7 0 2 docs Data Data html v constrFields给出字
  • 让 GHC 生成“带进位加法 (ADC)”指令

    下面的代码将表示 192 位数字的两个未装箱字三元组添加到新的未装箱字三元组中 并且还返回任何溢出 LANGUAGE MagicHash LANGUAGE UnboxedTuples import GHC Prim plusWord2 Wo
  • GHC 可以为 monad 转换器派生 Functor 和 Applicative 实例吗?

    我正在尝试实施MaybeT本着mtl图书馆 使用这个非编译解决方案 LANGUAGE FlexibleInstances MultiParamTypeClasses UndecidableInstances import Control M
  • 显示未定义的实例

    可以采取任何措施来为未定义的值定义 Show 实例吗 也许存在一些 GHC 扩展 我想要这样的东西 gt print 1 undefined 1 undefined 根据Haskell 2010 报告 第 9 章 http www hask
  • 在 Haskell 中将字节转换为 Int64s/Floats/Doubles

    我正在尝试解析 Haskell 中的二进制文件格式 Apple 的二进制属性列表格式 该格式所需的内容之一是将字节序列视为 a 无符号 1 2 或 4 字节整数 b 有符号 8 字节整数 c 32 位floats d 64 位doubles
  • Haskell 中函数和函子有什么区别?只有定义吗?

    在 Haskell 中 当编写函数时 这意味着我们将某个东西 输入 映射到另一个东西 输出 我尝试 LYAH 来理解 Functor 的定义 看起来和普通 Functor 一样 函数被称为函子有什么限制吗 Functor 是否允许有 I O
  • 通过 Emacs 评估 ghci 或 Hugs 中的缓冲区

    在 Emacs 中使用 sml mode 我已经能够使用以下命令将缓冲区内容直接发送到较差的 SML 进程C c C b 现在我只想用 Haskell 做同样的事情 Haskell 模式似乎不支持这一点 所以我想知道 使用 Emacs 和
  • 整数转浮点数

    这段代码的工作原理 posToXY Float gt Float gt Integer posToXY a b do let y a b round y 但这不起作用 posToXY Integer gt Integer gt Intege
  • Haskell Cabal 包 - 找不到 Paths_ 模块

    我正在开发一个 Haskell 项目 Happstack 服务器 Blaze HTML 前端作为主要库 我想添加一个静态数据目录 看起来你可以使用 Cabal 使用自动生成的Path
  • 导入 Haskell 模块

    我是哈斯克尔的新手 为什么当我尝试使用时Days from Data Time我收到此错误 Could not find module Data Time It is a member of the hidden package time
  • Haskell 中的前提条件检查有哪些选项

    这是一个简单的问题 我认为答案很复杂 一个非常常见的编程问题是函数返回某些内容 或者前置条件检查失败 在Java中 我会使用一些抛出异常的断言函数IllegalArgumentException在方法的开头 如下所示 method body
  • 如何让 Show 显示函数名称?

    作为一个让我熟悉 Haskell 的简单练习 在 Youtube 上闲逛并偶然进入美国倒计时游戏节目之后 我想为数字游戏制作一个求解器 你得到 6 个数字 需要将它们与 为了得到给定的结果 到目前为止我所得到的是非常脑死亡的 let ope
  • Haskell 类型系统的细微差别

    我一直在深入了解 haskell 类型系统的本质 并试图了解类型类的要点 我已经学到了很多东西 但我在下面的代码片段上遇到了困难 使用这些类和实例定义 class Show a gt C a where f Int gt a instanc
  • 无点镜头创建不进行类型检查

    在函数中test 我遍历一个列表 从它的成员生成镜头 然后打印一些数据 当我使用有针对性的呼叫风格时 这会起作用 当我使其成为无点时 它无法进行类型检查 为什么会出现这种情况 我该如何解决这个问题 在我看来 GHC 并没有保留排名较高的信息
  • Haskell:无法预期类型“Integer”与实际类型“Int”

    我已经盯着这段代码有一段时间了 但我无法理解该错误消息 divisors Integer gt Integer divisors n t t lt 1 n mod n t 0 length a gt Integer length 0 len
  • Haskell 中列表列表的笛卡尔积

    给定一个长度列表的列表x所有子列表的长度都相同y 输出y x长度列表x包含每个子列表中的一项 例子 x 3 y 2 1 2 3 4 5 6 Output 2 3 8不同的输出 1 3 5 1 4 5 1 3 6 1 4 6 2 3 5 2

随机推荐

  • 如何在 Fragment 中使用 SharedPreferences 保存数据

    我在永久保存数据时遇到问题 它应该很简单 我将数据发送到另一个片段并且它工作得很好 但是 我不知道如何保存数据 我尝试了一些事情 但我想知道你是否可以帮助我 在我的代码中 我通过按下按钮将数据发送到另一个片段 这是代码 包 com exam
  • 如何删除 Flex 4 TextArea 组件的边框(spark 主题光环)

    使用 Flex 3 SDK 您只需将 borderThickness 样式设置为 0 或将 borderStyle 设置为 none 对于 Flex 4 SDK 和 Spark 主题 这没有效果 尝试类似的方法 borderVisible
  • 删除目录中的内容时出错 - Domain=NSCocoaErrorDomain Code=4 | Domain=NSPOSIXErrorDomain Code=2“没有这样的文件或目录”

    运行下面的代码时如何修复以下错误 我已经在 SO 中搜索过 但找不到 Swift 3 的任何内容 Delete all files in given directory let path NSSearchPathForDirectories
  • 在 Sitefinity API 中为文件系统上已存在的文档创建文件

    我正在使用 Sitefinity 作为 Visual Studio 2012 中的解决方案 我使用的是 64 位计算机 我刚刚安装了 Windows Identity Manager 因为在此之前我收到了另一个错误 这与未安装该错误有关 现
  • 每页都有 Jekyll 分页

    据我们所知 Jekyll 默认分页仅支持 index html 我想创建 blog html 包含分页 有什么解决办法吗 如果您创建一个名为 blog并放置一个index html文件里面 然后你可以添加一个设置 config yml说的是
  • PHPUnit - 当 dataProvider 返回空数组时不要失败

    我有一个 PHPUnit 测试 它使用 dataProvider 数据提供者检查文件系统中的某些文件 但是 我在不同的环境中使用此测试 这意味着文件可能不存在 这意味着 dataProvider 没有找到任何内容 并且测试未执行 这会导致测
  • 将多维 PHP 数组传递给 javascript

    我有一个数组 my array 看起来像 array 2 25 gt int 10 30 gt int 8 我想将它分配给一个 javascript 数组 但我很难做到这一点 有什么建议么 编辑 起初 我以为我可以像字符串一样分配它 但这不
  • 高效的最长公共子序列算法库?

    我正在寻找一种 空间 高效的 LCS 算法实现 以便在 C 程序中使用 输入是两个随机访问整数序列 我目前正在使用关于 LCS 的维基百科页面上的动态编程方法 然而 这在内存和时间上有 O mn 的行为 并且对于较大的输入来说会因为内存不足
  • ZendFramework 2 中的控制器特定布局

    我的 zendframework 2 应用程序中有一个模块 其中包含两个控制器 我想为控制器的其中一个操作设置不同的布局 有没有办法在模块配置文件中设置它 P s 我只是尝试使用以下命令将其设置在控制器的 CONSTRUCT 方法内 但它不
  • 在 Material UI 中,我们何时使用 Input 与 TextField 来构建表单?

    也许这只是一个基本问题 但到目前为止还没有找到任何合理的解释 我是 React 的初学者 最近正在使用 Material UI 我不太清楚何时使用输入和何时使用输入Textfield用于构建表单 看文档感觉是TextField是什么的超集I
  • 尝试刷新令牌后,令牌被取消验证

    我将 Symfony 环境从 3 3 更新到 4 0 更新后 我的登录出现问题 数据库提供的用户 当我提交登录表单时 我直接返回到登录表单 没有任何错误消息 当我使用无效凭据时 我收到了相应的错误消息 这是尝试登录后的日志 使用 in me
  • 是否可以操作 CMDIFrameWndEx 的 CMFCMenuBar 的菜单?

    我的主框架有一个 CMFCMenuBar 成员 其中包含当前文档类型的菜单 我想动态添加 删除子菜单 例如 如果用户选择显示地图窗格 我想在 文件 菜单旁边添加一个地图子菜单 反之亦然 如果地图窗格关闭 我也想删除地图菜单项 一件可行但我不
  • Android:放置后,被拖动的editText消失

    我正在尝试创建一个用户可以在其中移动输入的表单 我有一个 editText 并希望它能够将其移动到我的relativeLayout 中的新位置 我可以捡起它并移动它 但一旦我放手 它就会完全消失 我已经尝试了几乎所有的方法 我认为 onDr
  • 删除的对象将通过级联重新保存(从关联中删除删除的对象)

    我有以下两个实体 1 播放列表 OneToMany fetch FetchType EAGER mappedBy playlist orphanRemoval true cascade CascadeType ALL OrderBy adO
  • git 克隆为 utf8 而不是 us-ascii

    当我跑步时git clone SOMEREPO从 GitHub 收到的文件位于us ascii file bi index php text plain charset us ascii 我怎样才能收到它们utf8 Thanks git c
  • 如何使用img标签

    我是一名在简单应用程序中工作的学生 我不知道如何使用 img 标签 我尝试了一个这样的代码 但在执行代码时 图像没有显示 请查看代码并帮助我看看出了什么问题在代码中 code is
  • lmer 分组错误

    我有一个具有以下结构的数据框 gt t lt read csv combinedData csv 1 7 gt str t data frame 699 obs of 7 variables Awns int 0 0 0 0 0 0 0 0
  • 如何在 Perl6 中查看散列的内容(以类似于 Perl 5 模块 Data::Dump 或 Data::Show 的方式)?

    在 Perl 5 中 如果我想查看哈希的内容 我可以使用Data Show https metacpan org pod Data Show Data Dump https metacpan org pod Data Dump or Dat
  • UITextField 中的文本编辑后向上移动(编辑时居中)

    我有一个奇怪的问题 我有一个 UITextField 用户应该在其中写入某物的数量 因此该字段称为 amountField 一切看起来都很好 当用户开始编辑文本字段时 文本位于垂直和水平中心 这很棒 但是 当用户结束编辑时 文本会向上移动一
  • 如何抗拒订购?

    给定表单输入A B C其中顺序不固定 例如C B A也可能 我如何将字符串解析为元组 a b c 以便再次对结果进行排序 更大的例子 Input A A 1 B 2 C 3 Input B C 3 B 2 A 1 Parsers a A g