base-compat-0.13.0: A compatibility layer for base
Safe HaskellSafe-Inferred
LanguageHaskell2010

Data.String.Compat

Synopsis

Documentation

type String = [Char] #

A String is a list of characters. String constants in Haskell are values of type String.

See Data.List for operations on lists.

lines :: String -> [String] #

lines breaks a string up into a list of strings at newline characters. The resulting strings do not contain newlines.

Note that after splitting the string at newline characters, the last part of the string is considered a line even if it doesn't end with a newline. For example,

>>> lines "" [] 
>>> lines "\n" [""] 
>>> lines "one" ["one"] 
>>> lines "one\n" ["one"] 
>>> lines "one\n\n" ["one",""] 
>>> lines "one\ntwo" ["one","two"] 
>>> lines "one\ntwo\n" ["one","two"] 

Thus lines s contains at least as many elements as newlines in s.

words :: String -> [String] #

words breaks a string up into a list of words, which were delimited by white space.

>>> words "Lorem ipsum\ndolor" ["Lorem","ipsum","dolor"] 

unlines :: [String] -> String #

unlines is an inverse operation to lines. It joins lines, after appending a terminating newline to each.

>>> unlines ["Hello", "World", "!"] "Hello\nWorld\n!\n" 

unwords :: [String] -> String #

unwords is an inverse operation to words. It joins words with separating spaces.

>>> unwords ["Lorem", "ipsum", "dolor"] "Lorem ipsum dolor"