Portability | non-portable (regex-base needs MPTC+FD) |
---|---|
Stability | experimental |
Maintainer | libraries@haskell.org |
Safe Haskell | None |
Text.Regex
Contents
Description
Regular expression matching. Uses the POSIX regular expression interface in Text.Regex.TDFA.
Regular expressions
data Regex
The TDFA backend specific Regex
type, used by this module's RegexOptions and RegexMaker
Instances
mkRegex :: String -> RegexSource
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).
Arguments
:: 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.
Arguments
:: Regex | The regular expression |
-> String | The string to match against |
-> Maybe [String] | Returns: |
Match a regular expression against a string
Arguments
:: 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.
Arguments
:: Regex | Search pattern |
-> String | Input string |
-> String | Replacement text |
-> String | Output 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.
This does not advance if the regex matches an empty string. This misfeature is here to match the behavior of the 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 the original Text.Regex API.