regex-pcre-0.94.4: Replaces/Enhances Text.Regex

Safe Haskell | None
Language | Haskell98

Text.Regex.PCRE.ByteString.Lazy

Contents

- Types
- Miscellaneous
- Medium level API functions
- CompOption flags
- ExecOption flags
- Orphan instances

Description

This exports instances of the high level API and the medium level API of `compile`,`execute`, and `regexec`.

Synopsis

- data Regex
- type MatchOffset = Int
- type MatchLength = Int
- newtype CompOption = CompOption CInt
- newtype ExecOption = ExecOption CInt
- data ReturnCode
- type WrapError = (ReturnCode, String)
- unusedOffset :: MatchOffset
- getVersion :: Maybe String
- compile :: CompOption -> ExecOption -> ByteString -> IO (Either (MatchOffset, String) Regex)
- execute :: Regex -> ByteString -> IO (Either WrapError (Maybe (Array Int (MatchOffset, MatchLength))))
- regexec :: Regex -> ByteString -> IO (Either WrapError (Maybe (ByteString, ByteString, ByteString, [ByteString])))
- compBlank :: CompOption
- 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
- execBlank :: ExecOption
- execAnchored :: ExecOption
- execNotBOL :: ExecOption
- execNotEOL :: ExecOption
- execNotEmpty :: ExecOption
- execNoUTF8Check :: ExecOption
- execPartial :: ExecOption

## Types

data Regex #

A compiled regular expression

Instances

RegexOptions Regex CompOption ExecOption # |
Methods blankCompOpt :: CompOption # blankExecOpt :: ExecOption # defaultCompOpt :: CompOption # defaultExecOpt :: ExecOption # setExecOpts :: ExecOption -> Regex -> Regex # getExecOpts :: Regex -> ExecOption #

type MatchOffset = Int #

0 based index from start of source, or (-1) for unused

type MatchLength = Int #

non-negative length of a match

newtype CompOption #

Constructors

CompOption CInt |

Instances

Eq CompOption # |
Methods (==) :: CompOption -> CompOption -> Bool # (/=) :: CompOption -> CompOption -> Bool #
Num CompOption # |
Methods (+) :: CompOption -> CompOption -> CompOption # (-) :: CompOption -> CompOption -> CompOption # (*) :: CompOption -> CompOption -> CompOption # negate :: CompOption -> CompOption # abs :: CompOption -> CompOption # signum :: CompOption -> CompOption # fromInteger :: Integer -> CompOption #
Show CompOption # |
Methods showsPrec :: Int -> CompOption -> ShowS # show :: CompOption -> String # showList :: [CompOption] -> ShowS #
Bits CompOption # |
Methods (.&.) :: CompOption -> CompOption -> CompOption # (.|.) :: CompOption -> CompOption -> CompOption # xor :: CompOption -> CompOption -> CompOption # complement :: CompOption -> CompOption # shift :: CompOption -> Int -> CompOption # rotate :: CompOption -> Int -> CompOption # zeroBits :: CompOption # bit :: Int -> CompOption # setBit :: CompOption -> Int -> CompOption # clearBit :: CompOption -> Int -> CompOption # complementBit :: CompOption -> Int -> CompOption # testBit :: CompOption -> Int -> Bool # bitSizeMaybe :: CompOption -> Maybe Int # bitSize :: CompOption -> Int # isSigned :: CompOption -> Bool # shiftL :: CompOption -> Int -> CompOption # unsafeShiftL :: CompOption -> Int -> CompOption # shiftR :: CompOption -> Int -> CompOption # unsafeShiftR :: CompOption -> Int -> CompOption # rotateL :: CompOption -> Int -> CompOption # rotateR :: CompOption -> Int -> CompOption # popCount :: CompOption -> Int #
RegexOptions Regex CompOption ExecOption # |
Methods blankCompOpt :: CompOption # blankExecOpt :: ExecOption # defaultCompOpt :: CompOption # defaultExecOpt :: ExecOption # setExecOpts :: ExecOption -> Regex -> Regex # getExecOpts :: Regex -> ExecOption #

newtype ExecOption #

Constructors

ExecOption CInt |

Instances

Eq ExecOption # |
Methods (==) :: ExecOption -> ExecOption -> Bool # (/=) :: ExecOption -> ExecOption -> Bool #
Num ExecOption # |
Methods (+) :: ExecOption -> ExecOption -> ExecOption # (-) :: ExecOption -> ExecOption -> ExecOption # (*) :: ExecOption -> ExecOption -> ExecOption # negate :: ExecOption -> ExecOption # abs :: ExecOption -> ExecOption # signum :: ExecOption -> ExecOption # fromInteger :: Integer -> ExecOption #
Show ExecOption # |
Methods showsPrec :: Int -> ExecOption -> ShowS # show :: ExecOption -> String # showList :: [ExecOption] -> ShowS #
Bits ExecOption # |
Methods (.&.) :: ExecOption -> ExecOption -> ExecOption # (.|.) :: ExecOption -> ExecOption -> ExecOption # xor :: ExecOption -> ExecOption -> ExecOption # complement :: ExecOption -> ExecOption # shift :: ExecOption -> Int -> ExecOption # rotate :: ExecOption -> Int -> ExecOption # zeroBits :: ExecOption # bit :: Int -> ExecOption # setBit :: ExecOption -> Int -> ExecOption # clearBit :: ExecOption -> Int -> ExecOption # complementBit :: ExecOption -> Int -> ExecOption # testBit :: ExecOption -> Int -> Bool # bitSizeMaybe :: ExecOption -> Maybe Int # bitSize :: ExecOption -> Int # isSigned :: ExecOption -> Bool # shiftL :: ExecOption -> Int -> ExecOption # unsafeShiftL :: ExecOption -> Int -> ExecOption # shiftR :: ExecOption -> Int -> ExecOption # unsafeShiftR :: ExecOption -> Int -> ExecOption # rotateL :: ExecOption -> Int -> ExecOption # rotateR :: ExecOption -> Int -> ExecOption # popCount :: ExecOption -> Int #
RegexOptions Regex CompOption ExecOption # |
Methods blankCompOpt :: CompOption # blankExecOpt :: ExecOption # defaultCompOpt :: CompOption # defaultExecOpt :: ExecOption # setExecOpts :: ExecOption -> Regex -> Regex # getExecOpts :: Regex -> ExecOption #

data ReturnCode #

Instances

Eq ReturnCode # |
Methods (==) :: ReturnCode -> ReturnCode -> Bool # (/=) :: ReturnCode -> ReturnCode -> Bool #
Show ReturnCode # |
Methods showsPrec :: Int -> ReturnCode -> ShowS # show :: ReturnCode -> String # showList :: [ReturnCode] -> ShowS #

type WrapError = (ReturnCode, String) #

## Miscellaneous

unusedOffset :: MatchOffset #

getVersion :: Maybe String #

return version of pcre used or Nothing if pcre is not available.

## Medium level API functions

compile #

Arguments

:: CompOption | (summed together)
-> ExecOption | (summed together)
-> ByteString | The regular expression to compile
-> IO (Either (MatchOffset, String) Regex) | Returns: the compiled regular expression

Compiles a regular expression

execute #

Arguments

:: Regex | Compiled regular expression
-> ByteString | String to match against
-> IO (Either WrapError (Maybe (Array Int (MatchOffset, MatchLength)))) | Returns: `Nothing` if the regex did not match the string, or: `Just` an array of (offset,length) pairs where index 0 is whole match, and the rest are the captured subexpressions.

Matches a regular expression against a buffer, returning the buffer indicies of the match, and any submatches

| Matches a regular expression against a string

regexec #

Arguments

:: Regex | Compiled regular expression
-> ByteString | String to match against
-> IO (Either WrapError (Maybe (ByteString, ByteString, ByteString, [ByteString]))) |

## CompOption flags

compBlank :: CompOption #

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 #

## ExecOption flags

execBlank :: ExecOption #

execAnchored :: ExecOption #

execNotBOL :: ExecOption #

execNotEOL :: ExecOption #

execNotEmpty :: ExecOption #

execNoUTF8Check :: ExecOption #

execPartial :: ExecOption #

# Orphan instances

RegexLike Regex 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 ByteString ByteString # |
Methods match :: Regex -> ByteString -> ByteString # matchM :: Monad m => Regex -> ByteString -> m ByteString #
RegexMaker Regex CompOption ExecOption ByteString # |
Methods makeRegex :: ByteString -> Regex # makeRegexOpts :: CompOption -> ExecOption -> ByteString -> Regex # makeRegexM :: Monad m => ByteString -> m Regex # makeRegexOptsM :: Monad m => CompOption -> ExecOption -> ByteString -> m Regex #