| Copyright | (c) Daan Leijen 1999-2001 |
|---|---|
| License | BSD-style (see the file LICENSE) |
| Maintainer | Christian Maeder <chr.maeder@web.de> |
| Stability | provisional |
| Portability | portable |
| Safe Haskell | Safe-Inferred |
| Language | Haskell98 |
Text.ParserCombinators.Parsec.Char
Description
Commonly used character parsers
Synopsis
- type CharParser st a = GenParser Char st a
- alphaNum :: CharParser st Char
- anyChar :: CharParser st Char
- char :: Char -> CharParser st Char
- digit :: CharParser st Char
- hexDigit :: CharParser st Char
- letter :: CharParser st Char
- lower :: CharParser st Char
- newline :: CharParser st Char
- noneOf :: [Char] -> CharParser st Char
- octDigit :: CharParser st Char
- oneOf :: [Char] -> CharParser st Char
- satisfy :: (Char -> Bool) -> CharParser st Char
- space :: CharParser st Char
- spaces :: CharParser st ()
- string :: String -> CharParser st String
- tab :: CharParser st Char
- upper :: CharParser st Char
Documentation
type CharParser st a = GenParser Char st a Source #
alphaNum :: CharParser st Char Source #
Parses an alphabetic or numeric Unicode characters according to
isAlphaNum. Returns the parsed character.
anyChar :: CharParser st Char Source #
This parser succeeds for any character. Returns the parsed character.
char :: Char -> CharParser st Char Source #
char c parses a single character c. Returns the parsed
character (i.e. c).
semiColon = char ';'
digit :: CharParser st Char Source #
Parses a digit ('0' ... '9') according to isDigit.
Returns the parsed character.
hexDigit :: CharParser st Char Source #
Parses a hexadecimal digit (a digit or a letter between 'a' and 'f' or 'A' and 'F'). Returns the parsed character.
letter :: CharParser st Char Source #
Parses an alphabetic Unicode characters according to isAlpha.
Returns the parsed character.
lower :: CharParser st Char Source #
Parses a lower case character according to isLower.
Returns the parsed character.
newline :: CharParser st Char Source #
Parses a newline character ('\n'). Returns a newline character.
noneOf :: [Char] -> CharParser st Char Source #
As the dual of oneOf, noneOf cs succeeds if the current
character not in the supplied list of characters cs. Returns the
parsed character.
consonant = noneOf "aeiou"
octDigit :: CharParser st Char Source #
Parses an octal digit ('0' ... '7') according to isOctDigit.
Returns the parsed character.
oneOf :: [Char] -> CharParser st Char Source #
oneOf cs succeeds if the current character is in the supplied
list of characters cs. Returns the parsed character. See also
satisfy.
vowel = oneOf "aeiou"
satisfy :: (Char -> Bool) -> CharParser st Char Source #
The parser satisfy f succeeds for any character for which the
supplied function f returns True. Returns the character that is
actually parsed.
digit = satisfy isDigit oneOf cs = satisfy (`elem` cs)
space :: CharParser st Char Source #
Parses a white space character (any character which satisfies isSpace)
Returns the parsed character.
spaces :: CharParser st () Source #
Skips zero or more white space characters. See also skipMany.
string :: String -> CharParser st String Source #
string s parses a sequence of characters given by s. Returns
the parsed string (i.e. s).
divOrMod = string "div"
<|> string "mod" tab :: CharParser st Char Source #
Parses a tab character ('\t'). Returns a tab character.