Copyright | (c) Chris Kuklewicz 2006 derived from (c) The University of Glasgow 2001 |
---|---|
License | BSD-style (see the file LICENSE) |
Maintainer | hvr@gnu.org |
Stability | experimental |
Portability | non-portable (regex-base needs MPTC+FD) |
Safe Haskell | Trustworthy |
Language | Haskell2010 |
Regular expression matching. Uses the POSIX regular expression interface in Text.Regex.Posix.
Synopsis
Regular expressions
Instances
RegexOptions Regex CompOption ExecOption | |
Defined in Text.Regex.Posix.Wrap blankCompOpt :: CompOption blankExecOpt :: ExecOption defaultCompOpt :: CompOption defaultExecOpt :: ExecOption setExecOpts :: ExecOption -> Regex -> Regex getExecOpts :: Regex -> ExecOption |
mkRegex :: String -> Regex Source #
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).
:: String | The regular expression to compile. |
-> Bool |
|
-> Bool |
|
-> Regex | Returns: the compiled regular expression. |
Makes a regular expression, where the multi-line and case-sensitive options can be changed from the default settings.
:: Regex | The regular expression. |
-> String | The string to match against. |
-> Maybe [String] | Returns: |
Match a regular expression against a string.
:: Regex | The regular expression. |
-> String | The string to match against. |
-> Maybe (String, String, String, [String]) | Returns: 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.
Replaces every occurrence 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.
This does not advance if the regex matches an empty string. This
misfeature is here to match the behavior of the original
Text.Regex
API.
splitRegex :: Regex -> String -> [String] Source #
Splits a string based on a regular expression. The regular expression should identify one delimiter.
This does not advance and produces an infinite list of []
if the regex
matches an empty string. This misfeature is here to match the
behavior of the original Text.Regex
API.