regex-pcre-0.95.0.0: PCRE Backend for "Text.Regex" (regex-base)
Safe HaskellSafe-Inferred
LanguageHaskell2010

Text.Regex.PCRE.Wrap

Description

This will fail or error only if allocation fails or a nullPtr is passed in.

Synopsis

High-level interface

data Regex Source #

A compiled regular expression

Instances

Instances details
RegexLike Regex ByteString 
Instance details

Defined in Text.Regex.PCRE.ByteString

RegexLike Regex ByteString 
Instance details

Defined in Text.Regex.PCRE.ByteString.Lazy

RegexLike Regex String 
Instance details

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)

RegexContext Regex ByteString ByteString 
Instance details

Defined in Text.Regex.PCRE.ByteString

RegexContext Regex ByteString ByteString 
Instance details

Defined in Text.Regex.PCRE.ByteString.Lazy

RegexContext Regex String String 
Instance details

Defined in Text.Regex.PCRE.String

Methods

match :: Regex -> String -> String

matchM :: MonadFail m => Regex -> String -> m String

RegexOptions Regex CompOption ExecOption Source # 
Instance details

Defined in Text.Regex.PCRE.Wrap

RegexMaker Regex CompOption ExecOption ByteString 
Instance details

Defined in Text.Regex.PCRE.ByteString

RegexMaker Regex CompOption ExecOption ByteString 
Instance details

Defined in Text.Regex.PCRE.ByteString.Lazy

RegexMaker Regex CompOption ExecOption String 
Instance details

Defined in Text.Regex.PCRE.String

RegexMaker Regex CompOption ExecOption (Seq Char) 
Instance details

Defined in Text.Regex.PCRE.Sequence

RegexLike Regex (Seq Char) 
Instance details

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) 
Instance details

Defined in Text.Regex.PCRE.Sequence

Methods

match :: Regex -> Seq Char -> Seq Char

matchM :: MonadFail m => Regex -> Seq Char -> m (Seq Char)

newtype CompOption Source #

Constructors

CompOption CInt 

Instances

Instances details
Bits CompOption Source # 
Instance details

Defined in Text.Regex.PCRE.Wrap

Num CompOption Source # 
Instance details

Defined in Text.Regex.PCRE.Wrap

Show CompOption Source # 
Instance details

Defined in Text.Regex.PCRE.Wrap

Eq CompOption Source # 
Instance details

Defined in Text.Regex.PCRE.Wrap

RegexOptions Regex CompOption ExecOption Source # 
Instance details

Defined in Text.Regex.PCRE.Wrap

RegexMaker Regex CompOption ExecOption ByteString 
Instance details

Defined in Text.Regex.PCRE.ByteString

RegexMaker Regex CompOption ExecOption ByteString 
Instance details

Defined in Text.Regex.PCRE.ByteString.Lazy

RegexMaker Regex CompOption ExecOption String 
Instance details

Defined in Text.Regex.PCRE.String

RegexMaker Regex CompOption ExecOption (Seq Char) 
Instance details

Defined in Text.Regex.PCRE.Sequence

newtype ExecOption Source #

Constructors

ExecOption CInt 

Instances

Instances details
Bits ExecOption Source # 
Instance details

Defined in Text.Regex.PCRE.Wrap

Num ExecOption Source # 
Instance details

Defined in Text.Regex.PCRE.Wrap

Show ExecOption Source # 
Instance details

Defined in Text.Regex.PCRE.Wrap

Eq ExecOption Source # 
Instance details

Defined in Text.Regex.PCRE.Wrap

RegexOptions Regex CompOption ExecOption Source # 
Instance details

Defined in Text.Regex.PCRE.Wrap

RegexMaker Regex CompOption ExecOption ByteString 
Instance details

Defined in Text.Regex.PCRE.ByteString

RegexMaker Regex CompOption ExecOption ByteString 
Instance details

Defined in Text.Regex.PCRE.ByteString.Lazy

RegexMaker Regex CompOption ExecOption String 
Instance details

Defined in Text.Regex.PCRE.String

RegexMaker Regex CompOption ExecOption (Seq Char) 
Instance details

Defined in Text.Regex.PCRE.Sequence

(=~) :: (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 #

Low-level interface

newtype ReturnCode Source #

Constructors

ReturnCode CInt 

Instances

Instances details
Show ReturnCode Source # 
Instance details

Defined in Text.Regex.PCRE.Wrap

Eq ReturnCode Source # 
Instance details

Defined in Text.Regex.PCRE.Wrap

wrapCompile Source #

Arguments

:: CompOption

Flags (summed together)

-> ExecOption

Flags (summed together)

-> CString

The regular expression to compile

-> IO (Either (MatchOffset, String) Regex)

Returns: an error offset and string or the compiled regular expression

Compiles a regular expression

wrapTest Source #

Arguments

:: StartOffset

Starting index in CStringLen

-> Regex

Compiled regular expression

-> CStringLen

String to match against and length in bytes

-> IO (Either WrapError Bool) 

wrapMatch Source #

Arguments

:: StartOffset

Starting index in CStringLen

-> Regex

Compiled regular expression

-> CStringLen

String to match against and length in bytes

-> IO (Either WrapError (Maybe [(StartOffset, EndOffset)]))

Returns: 'Right Nothing' if the regex did not match the string, or: 'Right Just' an array of (offset,length) pairs where index 0 is whole match, and the rest are the captured subexpressions, or: 'Left ReturnCode' if there is some strange error

Matches a regular expression against a string

Should never return (Right (Just []))

wrapMatchAll :: Regex -> CStringLen -> IO (Either WrapError [MatchArray]) Source #

wrapMatchAll is an improvement over wrapMatch since it only allocates memory with allocaBytes once at the start.

Miscellaneous

getVersion :: Maybe String Source #

Version string of PCRE library

NOTE: The Maybe type is used for historic reasons; practically, getVersion is never Nothing.

CompOption values

ExecOption values

ReturnCode values