Haskell Hierarchical Libraries (base package)ContentsIndex
Text.Regex
Portabilityportable
Stabilityexperimental
Maintainerlibraries@haskell.org
Contents
Regular expressions
Description
Regular expression matching. Uses the POSIX regular expression interface in Text.Regex.Posix.
Synopsis
data Regex
mkRegex :: String -> Regex
mkRegexWithOpts :: String -> Bool -> Bool -> Regex
matchRegex :: Regex -> String -> Maybe [String]
matchRegexAll :: Regex -> String -> Maybe (String, String, String, [String])
subRegex :: Regex -> String -> String -> String
splitRegex :: Regex -> String -> [String]
Regular expressions
data Regex
A compiled regular expression
mkRegex :: String -> Regex
Makes a regular expression with the default options (multi-line, case-sensitive). The syntax of regular expressions is otherwise that of egrep (i.e. POSIX "extended" regular expressions).
mkRegexWithOpts
:: StringThe regular expression to compile
-> BoolTrue <=> '^' and '$' match the beginning and end of individual lines respectively, and '.' does not match the newline character.
-> BoolTrue <=> matching is case-sensitive
-> RegexReturns: the compiled regular expression
Makes a regular expression, where the multi-line and case-sensitive options can be changed from the default settings.
matchRegex
:: RegexThe regular expression
-> StringThe string to match against
-> Maybe [String]Returns: Just strs if the match succeeded (and strs is the list of subexpression matches), or Nothing otherwise.
Match a regular expression against a string
matchRegexAll
:: RegexThe regular expression
-> StringThe string to match against
-> Maybe (String, String, String, [String])

Returns: Nothing if the match failed, or:

  Just ( everything before match,
         portion matched,
         everything after the match,
         subexpression matches )
Match a regular expression against a string, returning more information about the match.
subRegex
:: RegexSearch pattern
-> StringInput string
-> StringReplacement text
-> StringOutput string

Replaces every occurance of the given regexp with the replacement string.

In the replacement string, "\1" refers to the first substring; "\2" to the second, etc; and "\0" to the entire match. "\\\\" will insert a literal backslash.

splitRegex :: Regex -> String -> [String]
Splits a string based on a regular expression. The regular expression should identify one delimiter.
Produced by Haddock version 0.7