Mikan.Utils.Text
Contents
Description
Utilities for working with Text
Text
breakAfter :: (Char -> Bool) -> Text -> (Text, Text) Source #
Breaks a bit of text just after a character satisfying the predicate is found.
>>> breakAfter (== 'b') "aaaabbbb" ("aaaab","bbb")
>>>
breakAfter (== 'b') "aaaabbbb"
>>> breakAfter (== 'a') "aaaabbbb" ("a","aaabbbb")
breakAfter (== 'a') "aaaabbbb"
>>> breakAfter (== 'c') "aaaabbbb" ("aaaabbbb","")
breakAfter (== 'c') "aaaabbbb"
spanEnd :: (Char -> Bool) -> Text -> (Text, Text) Source #
spanEnd, applied to a predicate p, a text t, returns a pair (t1, t2) where t2 is the longest suffix of t whose elements satisfy p, and t1 is the remainder of the text.
spanEnd
p
t
(t1, t2)
t2
t1