这是 Text.Parsec 的惯用用法吗?

2023-12-22

我的使用Text.Parsec有点生锈了。如果我只想返回匹配的字符串,这是惯用的吗?

category :: Stream s m Char => ParsecT s u m [Char]                        
category = concat <$> (many1 $ (:) <$> char '/' <*> (many1 $ noneOf "/\n"))

我觉得可能有一个现有的运营商liftM concat . many1 or (:) <$> p1 <*> p2我忽略了这一点,但我不确定。


我想那很好。稍微明智的命名会让它更漂亮:

category = concat <$> many1 segment
  where
    segment = (:) <$> char '/' <*> many1 (noneOf "/\n")
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

这是 Text.Parsec 的惯用用法吗? 的相关文章

随机推荐

  • 为什么我在没有释放按键的情况下收到 Pygame KEYUP 事件?

    首先 我是一个完全的初学者 所以我没有任何经验 但是我在过去两天搜索了所有可能的地方来解决问题 但找不到它 我在带有 Raspbian 的 Raspberry PI 3 上使用它 我正在尝试在 Python 3 6 中构建一个简单的代码 它
  • Firebase 消息,onMessage 未被调用

    这就是我调用发送消息的方式 sendMessage var key VERY LONG KEY dffdADFDFD vdfDafd var to VERY LONG KEY ADEWerew vdfDafd var notificatio
  • axios - 如何不在多个参数中添加[]?

    Axios 添加方括号如果有多个具有相同名称的参数 则传递给该参数 问题是我不需要包含那些括号 因为我使用Django Rest Framework and Django Filters 如果我使用这个符号 我该如何做到这一点 axios
  • java中如何捕获嵌套异常

    我正在使用 Apache Xalan v 2 7 1 在 Apache Tomcat v6 0 32 中将 XML 转换为 XHTML 有时加载会被客户端取消并引发以下异常 javax xml transform TransformerEx
  • WPF 中的高效实时日志查看器

    我希望 WPF 中有一个高效的日志查看器控件 它可以在添加消息时简单地显示实时日志 连接来自日志系统的通知是没有问题的 但我担心一旦日志行数量变大 日志窗口将随着每个附加日志行而变得缓慢 日志通知事件将仅提供一个日志字符串 以及一些元数据
  • (为什么)我应该“始终”在任何 vue.js 应用程序中使用组件,无论多么简单?

    我刚刚开始使用 vue js 并且已经从文档的第一个入门章节创建了我需要的大部分非常小的功能 现在我想添加一些测试 以确保我的功能在更改后始终有效 通常我会进行 TDD 但这次我必须先学习 vue 然后决定是否继续使用它 所以在寻找文档时我
  • 如何在 Spring 中使用 JDBC 为 ClientDetailsS​​erviceConfigurer 添加客户端?

    我的内存工作如下 Override public void configure ClientDetailsServiceConfigurer clients throws Exception clients inMemory withCli
  • Zend 框架路径问题

    All 我只是想查看除 欢迎使用 Zend Framework 屏幕之外的任何页面 我已经从本教程下载了该项目 http framework zend com docs quickstart create a form http frame
  • 如何使用 C# 创建 ODBC DSN 条目?

    我正在开发一个具有 C 扩展存储过程的遗留应用程序 该xsproc使用ODBC连接到数据库 这意味着它需要配置DSN 我正在更新安装程序 使用 Visual Studio 2008 安装项目创建 并希望有一个可以创建 ODBC DSN 条目
  • 在 R 中使用变量字符串引用对象

    编辑 感谢迄今为止做出回应的人 我是 R 的初学者 刚刚为我的硕士学位论文承担了一个大型项目 所以对初始处理有点不知所措 我使用的数据如下 来自WMO公开的降雨数据 120 6272100 KHARTOUM 15 60 32 55 382
  • FFmpeg Android 执行

    在 Windows 上 我可以使用 ffmpeg exe 使用以下代码剪切视频 安卓上无法使用ffmpeg 我使用 gradle 在我的应用程序中获取 ffmpeg dependencies compile fileTree dir lib
  • 使用 Devise 创建新用户时跳过电子邮件确认

    我有一个用户注册页面 并将信息发送给一个新用户在该网站注册的几个管理员用户 现在 我创建了包含用户列表 200 的种子数据 因此 它将向相应的管理员用户发送 200 多封电子邮件 因此 我想在创建新用户时停止向管理员用户发送确认邮件 对于设
  • 如何更改react-bootstrap中活动单选按钮的背景颜色?

    在 React 项目中 我有一个单选按钮列出日历日期和天数 我的目的是更改这些单选按钮的背景颜色并保留它 单击屏幕时它不应消失 以下是参考代码 newDate map data i gt
  • AVComposition 无法通过 Airplay Video 播放

    我的 AVMutableComposition 包含两个本地存储的视频文件 在 iPad 上可以正常播放 但无法通过 AirPlay Video 播放 我的 AVPlayer 实现适用于 AirPlay 视频上的常规 AVURLAssets
  • 为什么 PyMongo 会抛出 AutoReconnect?

    在研究我的 Python Web 应用程序的一些奇怪问题 特别是有关 MongoDB 连接的问题 时 我注意到一些事情在 PyMongo 官方文档页面上 http api mongodb org python current api pym
  • 通过命令行运行 NUnit 测试时使用 runsettings 文件

    我创建了一个运行设置文件 如下所示
  • Bluebird 摩卡中的每个循环都不起作用

    我正在编写一个测试 我需要循环异步 api 调用的结果并动态地使 mocha Its 来测试响应的每次迭代 我找到了一些其他相关的答案 这让我开始了 这是我到目前为止所尝试过的 function getter uri return new
  • c char * 问题

    这绝对是一个菜鸟问题 但我似乎在任何地方都找不到合适的答案 所以这里给出了以下代码 include
  • Java Math.pow(a,b) 时间复杂度

    我想问一下下面代码的时间复杂度 是 O n 吗 Math pow 的时间复杂度是O 1 吗 一般来说 Math pow a b 的时间复杂度是O b 还是O 1 提前致谢 public void foo int ar int n ar le
  • 这是 Text.Parsec 的惯用用法吗?

    我的使用Text Parsec有点生锈了 如果我只想返回匹配的字符串 这是惯用的吗 category Stream s m Char gt ParsecT s u m Char category concat lt gt many1 lt