Copyright | (c) The University of Glasgow 2007 |
---|---|
License | BSD-style (see the file libraries/base/LICENSE) |
Maintainer | libraries@haskell.org |
Stability | experimental |
Portability | portable |
Safe Haskell | Trustworthy |
Language | Haskell2010 |
The String
type and associated operations.
Documentation
class IsString a where Source #
Class for string-like datastructures; used by the overloaded string extension (-XOverloadedStrings in GHC).
fromString :: String -> a Source #
Instances
IsString a => IsString (Identity a) # | Since: base-4.9.0.0 |
Defined in Data.String fromString :: String -> Identity a Source # | |
a ~ Char => IsString [a] # |
Since: base-2.1 |
Defined in Data.String fromString :: String -> [a] Source # | |
IsString a => IsString (Const a b) # | Since: base-4.9.0.0 |
Defined in Data.String fromString :: String -> Const a b Source # |
Functions on strings
lines :: String -> [String] Source #
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
contains at least as many elements as newlines in lines
ss
.
words :: String -> [String] Source #
words
breaks a string up into a list of words, which were delimited
by white space.
>>>
words "Lorem ipsum\ndolor"
["Lorem","ipsum","dolor"]