| 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 |
Text.Regex
Contents
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
Instances
| RegexLike Regex ByteString | |
Defined in Text.Regex.Posix.ByteString Methods matchOnce :: Regex -> ByteString -> Maybe MatchArray matchAll :: Regex -> ByteString -> [MatchArray] matchCount :: Regex -> ByteString -> Int matchTest :: Regex -> ByteString -> Bool matchAllText :: Regex -> ByteString -> [MatchText ByteString] matchOnceText :: Regex -> ByteString -> Maybe (ByteString, MatchText ByteString, ByteString) | |
| RegexLike Regex ByteString | |
Defined in Text.Regex.Posix.ByteString.Lazy Methods matchOnce :: Regex -> ByteString -> Maybe MatchArray matchAll :: Regex -> ByteString -> [MatchArray] matchCount :: Regex -> ByteString -> Int matchTest :: Regex -> ByteString -> Bool matchAllText :: Regex -> ByteString -> [MatchText ByteString] matchOnceText :: Regex -> ByteString -> Maybe (ByteString, MatchText ByteString, ByteString) | |
| RegexLike Regex String | |
Defined in Text.Regex.Posix.String Methods matchOnce :: Regex -> String -> Maybe MatchArray matchAll :: Regex -> String -> [MatchArray] matchCount :: Regex -> String -> Int matchTest :: Regex -> String -> Bool matchAllText :: Regex -> String -> [MatchText String] matchOnceText :: Regex -> String -> Maybe (String, MatchText String, String) | |
| RegexContext Regex ByteString ByteString | |
Defined in Text.Regex.Posix.ByteString | |
| RegexContext Regex ByteString ByteString | |
Defined in Text.Regex.Posix.ByteString.Lazy | |
| RegexContext Regex String String | |
Defined in Text.Regex.Posix.String | |
| RegexOptions Regex CompOption ExecOption | |
Defined in Text.Regex.Posix.Wrap Methods blankCompOpt :: CompOption blankExecOpt :: ExecOption defaultCompOpt :: CompOption defaultExecOpt :: ExecOption setExecOpts :: ExecOption -> Regex -> Regex getExecOpts :: Regex -> ExecOption | |
| RegexMaker Regex CompOption ExecOption ByteString | |
Defined in Text.Regex.Posix.ByteString Methods makeRegex :: ByteString -> Regex makeRegexOpts :: CompOption -> ExecOption -> ByteString -> Regex makeRegexM :: MonadFail m => ByteString -> m Regex makeRegexOptsM :: MonadFail m => CompOption -> ExecOption -> ByteString -> m Regex | |
| RegexMaker Regex CompOption ExecOption ByteString | |
Defined in Text.Regex.Posix.ByteString.Lazy Methods makeRegex :: ByteString -> Regex makeRegexOpts :: CompOption -> ExecOption -> ByteString -> Regex makeRegexM :: MonadFail m => ByteString -> m Regex makeRegexOptsM :: MonadFail m => CompOption -> ExecOption -> ByteString -> m Regex | |
| RegexMaker Regex CompOption ExecOption String | |
Defined in Text.Regex.Posix.String Methods makeRegexOpts :: CompOption -> ExecOption -> String -> Regex makeRegexM :: MonadFail m => String -> m Regex makeRegexOptsM :: MonadFail m => CompOption -> ExecOption -> String -> m Regex | |
| RegexMaker Regex CompOption ExecOption (Seq Char) | |
Defined in Text.Regex.Posix.Sequence Methods makeRegex :: Seq Char -> Regex makeRegexOpts :: CompOption -> ExecOption -> Seq Char -> Regex makeRegexM :: MonadFail m => Seq Char -> m Regex makeRegexOptsM :: MonadFail m => CompOption -> ExecOption -> Seq Char -> m Regex | |
| RegexLike Regex (Seq Char) | |
Defined in Text.Regex.Posix.Sequence Methods matchOnce :: Regex -> Seq Char -> Maybe MatchArray matchAll :: Regex -> Seq Char -> [MatchArray] matchCount :: Regex -> Seq Char -> Int matchTest :: Regex -> Seq Char -> Bool matchAllText :: Regex -> Seq Char -> [MatchText (Seq Char)] matchOnceText :: Regex -> Seq Char -> Maybe (Seq Char, MatchText (Seq Char), Seq Char) | |
| RegexContext Regex (Seq Char) (Seq Char) | |
Defined in Text.Regex.Posix.Sequence | |
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).
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 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.