如何使用正则表达式拆分字符串?

时间:2013-11-21 18:02:23

标签: regex haskell

我想使用正则表达式拆分字符串。我在Hackage上浏览了各种正则表达式模块,但我对它们没有任何意义。 (我注意到Data.List.Split,但它似乎没有提供我需要的东西。)

2 个答案:

答案 0 :(得分:2)

这可能会对您有所帮助:

ghci > import Text.Regex.Posix
ghci > getAllTextMatches ("good food" =~ ".ood" :: AllTextMatches [] String)
["good","food"]

真实世界的haskell书上有一个很好的chapter

答案 1 :(得分:0)

在Haskell中,我们经常使用monadic解析器代替正则表达式进行模式匹配。

请参见splitCap

import Text.Megaparsec
import Text.Megaparsec.Char
import Replace.Megaparsec
import Data.Void

splitCap (some letterChar) "I'd like...a string"
[Right "I",Left "'",Right "d",Left " ",Right "like",Left "...",Right "a",Left " ",Right "string"]