【发布时间】:2013-02-17 15:17:49
【问题描述】:
处理大量文本数据时,建议使用Data.Text,而不是haskells原生字符串。检查,完成。但是正则表达式呢?是否有专门针对Data.Text 的正则表达式库?据我所知,所有正则表达式库都在使用 Haskell 原生字符串,甚至更糟糕的 CString。
【问题讨论】:
-
请记住,鉴于在 Haskell 中编写解析器(实际上是几十个包)很容易,正则表达式在大多数惯用的 Haskell 代码中实际上并不常见。解析器往往更易读(你命名产品等),更易于维护,并且不一定要慢得多。
-
你试过 Text.Regex.TDFA [hackage.haskell.org/package/regex-tdfa] 吗?我发现它足够快,但不知道在您的情况下 大量 数据意味着什么。我也同意像 Text.Parsec 这样的 @copumpkin 解析器在大多数情况下更适合。