Safe Haskell | None |
---|---|
Language | Haskell2010 |
Text.Regex.PCRE
Description
The Text.Regex.PCRE module provides a backend for regular expressions. If you import this along with other backends, then you should do so with qualified imports, perhaps renamed for convenience.
Using the provided CompOption
and ExecOption
values and if
configUTF8
is True, then you might be able to send UTF8 encoded
ByteStrings to PCRE and get sensible results. This is currently
untested.
The regular expression can be provided as a ByteString
, but it will
be copied and a NUL byte appended to make a CString
unless such a
byte is already present. Thus the regular expression cannot contain
an explicit NUL byte. The search string is passed as a CStringLen
and may contain NUL bytes and does not need to end in a NUL
byte. ByteString
s are searched in place (via unsafeUseAsCStringLen).
A String
will be converted into a CString
or CStringLen
for
processing. Doing this repeatedly will be very inefficient.
The Text.Regex.PCRE.String, Text.Regex.PCRE.ByteString, and Text.Regex.PCRE.Wrap modules provides both the high level interface exported by this module and medium- and low-level interfaces that returns error using Either structures.
Synopsis
- getVersion_Text_Regex_PCRE :: Version
- data Regex
- newtype ExecOption = ExecOption CInt
- newtype CompOption = CompOption CInt
- (=~) :: (RegexMaker Regex CompOption ExecOption source, RegexContext Regex source1 target) => source1 -> source -> target
- (=~~) :: (RegexMaker Regex CompOption ExecOption source, RegexContext Regex source1 target, MonadFail m) => source1 -> source -> m target
- compBlank :: CompOption
- execBlank :: ExecOption
- unusedOffset :: MatchOffset
- getNumSubs :: Regex -> Int
- getVersion :: Maybe String
- configUTF8 :: Bool
- compAnchored :: CompOption
- compAutoCallout :: CompOption
- compCaseless :: CompOption
- compDollarEndOnly :: CompOption
- compDotAll :: CompOption
- compExtended :: CompOption
- compExtra :: CompOption
- compFirstLine :: CompOption
- compMultiline :: CompOption
- compNoAutoCapture :: CompOption
- compUngreedy :: CompOption
- compUTF8 :: CompOption
- compNoUTF8Check :: CompOption
- execAnchored :: ExecOption
- execNotBOL :: ExecOption
- execNotEOL :: ExecOption
- execNotEmpty :: ExecOption
- execNoUTF8Check :: ExecOption
- execPartial :: ExecOption
Documentation
getVersion_Text_Regex_PCRE :: Version Source #
Wrap, for =~
and =~~
, types and constants
A compiled regular expression
Instances
RegexLike Regex String | |
Defined in Text.Regex.PCRE.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) | |
RegexLike Regex ByteString | |
Defined in Text.Regex.PCRE.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 ByteString | |
Defined in Text.Regex.PCRE.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) | |
RegexContext Regex String String | |
Defined in Text.Regex.PCRE.String | |
RegexContext Regex ByteString ByteString | |
Defined in Text.Regex.PCRE.ByteString.Lazy | |
RegexContext Regex ByteString ByteString | |
Defined in Text.Regex.PCRE.ByteString | |
RegexOptions Regex CompOption ExecOption Source # | |
Defined in Text.Regex.PCRE.Wrap | |
RegexMaker Regex CompOption ExecOption String | |
Defined in Text.Regex.PCRE.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 ByteString | |
Defined in Text.Regex.PCRE.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 ByteString | |
Defined in Text.Regex.PCRE.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 (Seq Char) | |
Defined in Text.Regex.PCRE.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.PCRE.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.PCRE.Sequence |
newtype ExecOption Source #
Constructors
ExecOption CInt |
Instances
newtype CompOption Source #
Constructors
CompOption CInt |
Instances
(=~) :: (RegexMaker Regex CompOption ExecOption source, RegexContext Regex source1 target) => source1 -> source -> target Source #
(=~~) :: (RegexMaker Regex CompOption ExecOption source, RegexContext Regex source1 target, MonadFail m) => source1 -> source -> m target Source #
getNumSubs :: Regex -> Int Source #
getVersion :: Maybe String Source #
Version string of PCRE library
NOTE: The Maybe
type is used for historic reasons; practically, getVersion
is never Nothing
.
configUTF8 :: Bool Source #