2013-02-17 44 views

回答

10

可以breakOn子串,

breakOn :: Text -> Text -> (Text, Text) 

Text成两部分在图案的第一次出现分裂,然后更换子在所述第二部件的开始:

replaceOne :: Text -> Text -> Text -> Text 
replaceOne pattern substitution text 
    | T.null back = text -- pattern doesn't occur 
    | otherwise = T.concat [front, substitution, T.drop (T.length pattern) back] 
    where 
     (front, back) = breakOn pattern text 
相关问题