regex-pcre2-1.0.0.0: PCRE2 Backend for "Text.Regex" (regex-base)
Safe HaskellNone
LanguageHaskell2010

Text.Regex.PCRE2.Sequence

Description

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

Synopsis

Types

data Regex Source #

A compiled regular expression

Instances

Instances details
RegexLike Regex ByteString Source # 
Instance details

Defined in Text.Regex.PCRE2.ByteString

Methods

matchOnce :: Regex -> ByteString -> Maybe MatchArray Source #

matchAll :: Regex -> ByteString -> [MatchArray] Source #

matchCount :: Regex -> ByteString -> Int Source #

matchTest :: Regex -> ByteString -> Bool Source #

matchAllText :: Regex -> ByteString -> [MatchText ByteString] Source #

matchOnceText :: Regex -> ByteString -> Maybe (ByteString, MatchText ByteString, ByteString) Source #

RegexLike Regex ByteString Source # 
Instance details

Defined in Text.Regex.PCRE2.ByteString.Lazy

Methods

matchOnce :: Regex -> ByteString -> Maybe MatchArray Source #

matchAll :: Regex -> ByteString -> [MatchArray] Source #

matchCount :: Regex -> ByteString -> Int Source #

matchTest :: Regex -> ByteString -> Bool Source #

matchAllText :: Regex -> ByteString -> [MatchText ByteString] Source #

matchOnceText :: Regex -> ByteString -> Maybe (ByteString, MatchText ByteString, ByteString) Source #

RegexLike Regex String Source # 
Instance details

Defined in Text.Regex.PCRE2.String

Methods

matchOnce :: Regex -> String -> Maybe MatchArray Source #

matchAll :: Regex -> String -> [MatchArray] Source #

matchCount :: Regex -> String -> Int Source #

matchTest :: Regex -> String -> Bool Source #

matchAllText :: Regex -> String -> [MatchText String] Source #

matchOnceText :: Regex -> String -> Maybe (String, MatchText String, String) Source #

RegexContext Regex ByteString ByteString Source # 
Instance details

Defined in Text.Regex.PCRE2.ByteString

Methods

match :: Regex -> ByteString -> ByteString Source #

matchM :: MonadFail m => Regex -> ByteString -> m ByteString Source #

RegexContext Regex ByteString ByteString Source # 
Instance details

Defined in Text.Regex.PCRE2.ByteString.Lazy

Methods

match :: Regex -> ByteString -> ByteString Source #

matchM :: MonadFail m => Regex -> ByteString -> m ByteString Source #

RegexContext Regex String String Source # 
Instance details

Defined in Text.Regex.PCRE2.String

Methods

match :: Regex -> String -> String Source #

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

RegexOptions Regex CompOption MatchOption Source # 
Instance details

Defined in Text.Regex.PCRE2.Wrap

RegexMaker Regex CompOption MatchOption ByteString Source # 
Instance details

Defined in Text.Regex.PCRE2.ByteString

Methods

makeRegex :: ByteString -> Regex Source #

makeRegexOpts :: CompOption -> MatchOption -> ByteString -> Regex Source #

makeRegexM :: MonadFail m => ByteString -> m Regex Source #

makeRegexOptsM :: MonadFail m => CompOption -> MatchOption -> ByteString -> m Regex Source #

RegexMaker Regex CompOption MatchOption ByteString Source # 
Instance details

Defined in Text.Regex.PCRE2.ByteString.Lazy

Methods

makeRegex :: ByteString -> Regex Source #

makeRegexOpts :: CompOption -> MatchOption -> ByteString -> Regex Source #

makeRegexM :: MonadFail m => ByteString -> m Regex Source #

makeRegexOptsM :: MonadFail m => CompOption -> MatchOption -> ByteString -> m Regex Source #

RegexMaker Regex CompOption MatchOption String Source # 
Instance details

Defined in Text.Regex.PCRE2.String

Methods

makeRegex :: String -> Regex Source #

makeRegexOpts :: CompOption -> MatchOption -> String -> Regex Source #

makeRegexM :: MonadFail m => String -> m Regex Source #

makeRegexOptsM :: MonadFail m => CompOption -> MatchOption -> String -> m Regex Source #

RegexMaker Regex CompOption MatchOption (Seq Char) Source # 
Instance details

Defined in Text.Regex.PCRE2.Sequence

Methods

makeRegex :: Seq Char -> Regex Source #

makeRegexOpts :: CompOption -> MatchOption -> Seq Char -> Regex Source #

makeRegexM :: MonadFail m => Seq Char -> m Regex Source #

makeRegexOptsM :: MonadFail m => CompOption -> MatchOption -> Seq Char -> m Regex Source #

RegexLike Regex (Seq Char) Source # 
Instance details

Defined in Text.Regex.PCRE2.Sequence

Methods

matchOnce :: Regex -> Seq Char -> Maybe MatchArray Source #

matchAll :: Regex -> Seq Char -> [MatchArray] Source #

matchCount :: Regex -> Seq Char -> Int Source #

matchTest :: Regex -> Seq Char -> Bool Source #

matchAllText :: Regex -> Seq Char -> [MatchText (Seq Char)] Source #

matchOnceText :: Regex -> Seq Char -> Maybe (Seq Char, MatchText (Seq Char), Seq Char) Source #

RegexContext Regex (Seq Char) (Seq Char) Source # 
Instance details

Defined in Text.Regex.PCRE2.Sequence

Methods

match :: Regex -> Seq Char -> Seq Char Source #

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

type MatchOffset = Int Source #

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

type MatchLength = Int Source #

non-negative length of a match

newtype CompOption Source #

Constructors

CompOption Word32 

Instances

Instances details
Bits CompOption Source # 
Instance details

Defined in Text.Regex.PCRE2.Wrap

Num CompOption Source # 
Instance details

Defined in Text.Regex.PCRE2.Wrap

Show CompOption Source # 
Instance details

Defined in Text.Regex.PCRE2.Wrap

Methods

showsPrec :: Int -> CompOption -> ShowS

show :: CompOption -> String

showList :: [CompOption] -> ShowS

Eq CompOption Source # 
Instance details

Defined in Text.Regex.PCRE2.Wrap

Methods

(==) :: CompOption -> CompOption -> Bool

(/=) :: CompOption -> CompOption -> Bool

RegexOptions Regex CompOption MatchOption Source # 
Instance details

Defined in Text.Regex.PCRE2.Wrap

RegexMaker Regex CompOption MatchOption ByteString Source # 
Instance details

Defined in Text.Regex.PCRE2.ByteString

Methods

makeRegex :: ByteString -> Regex Source #

makeRegexOpts :: CompOption -> MatchOption -> ByteString -> Regex Source #

makeRegexM :: MonadFail m => ByteString -> m Regex Source #

makeRegexOptsM :: MonadFail m => CompOption -> MatchOption -> ByteString -> m Regex Source #

RegexMaker Regex CompOption MatchOption ByteString Source # 
Instance details

Defined in Text.Regex.PCRE2.ByteString.Lazy

Methods

makeRegex :: ByteString -> Regex Source #

makeRegexOpts :: CompOption -> MatchOption -> ByteString -> Regex Source #

makeRegexM :: MonadFail m => ByteString -> m Regex Source #

makeRegexOptsM :: MonadFail m => CompOption -> MatchOption -> ByteString -> m Regex Source #

RegexMaker Regex CompOption MatchOption String Source # 
Instance details

Defined in Text.Regex.PCRE2.String

Methods

makeRegex :: String -> Regex Source #

makeRegexOpts :: CompOption -> MatchOption -> String -> Regex Source #

makeRegexM :: MonadFail m => String -> m Regex Source #

makeRegexOptsM :: MonadFail m => CompOption -> MatchOption -> String -> m Regex Source #

RegexMaker Regex CompOption MatchOption (Seq Char) Source # 
Instance details

Defined in Text.Regex.PCRE2.Sequence

Methods

makeRegex :: Seq Char -> Regex Source #

makeRegexOpts :: CompOption -> MatchOption -> Seq Char -> Regex Source #

makeRegexM :: MonadFail m => Seq Char -> m Regex Source #

makeRegexOptsM :: MonadFail m => CompOption -> MatchOption -> Seq Char -> m Regex Source #

newtype MatchOption Source #

Constructors

MatchOption Word32 

Instances

Instances details
Bits MatchOption Source # 
Instance details

Defined in Text.Regex.PCRE2.Wrap

Num MatchOption Source # 
Instance details

Defined in Text.Regex.PCRE2.Wrap

Show MatchOption Source # 
Instance details

Defined in Text.Regex.PCRE2.Wrap

Methods

showsPrec :: Int -> MatchOption -> ShowS

show :: MatchOption -> String

showList :: [MatchOption] -> ShowS

Eq MatchOption Source # 
Instance details

Defined in Text.Regex.PCRE2.Wrap

Methods

(==) :: MatchOption -> MatchOption -> Bool

(/=) :: MatchOption -> MatchOption -> Bool

RegexOptions Regex CompOption MatchOption Source # 
Instance details

Defined in Text.Regex.PCRE2.Wrap

RegexMaker Regex CompOption MatchOption ByteString Source # 
Instance details

Defined in Text.Regex.PCRE2.ByteString

Methods

makeRegex :: ByteString -> Regex Source #

makeRegexOpts :: CompOption -> MatchOption -> ByteString -> Regex Source #

makeRegexM :: MonadFail m => ByteString -> m Regex Source #

makeRegexOptsM :: MonadFail m => CompOption -> MatchOption -> ByteString -> m Regex Source #

RegexMaker Regex CompOption MatchOption ByteString Source # 
Instance details

Defined in Text.Regex.PCRE2.ByteString.Lazy

Methods

makeRegex :: ByteString -> Regex Source #

makeRegexOpts :: CompOption -> MatchOption -> ByteString -> Regex Source #

makeRegexM :: MonadFail m => ByteString -> m Regex Source #

makeRegexOptsM :: MonadFail m => CompOption -> MatchOption -> ByteString -> m Regex Source #

RegexMaker Regex CompOption MatchOption String Source # 
Instance details

Defined in Text.Regex.PCRE2.String

Methods

makeRegex :: String -> Regex Source #

makeRegexOpts :: CompOption -> MatchOption -> String -> Regex Source #

makeRegexM :: MonadFail m => String -> m Regex Source #

makeRegexOptsM :: MonadFail m => CompOption -> MatchOption -> String -> m Regex Source #

RegexMaker Regex CompOption MatchOption (Seq Char) Source # 
Instance details

Defined in Text.Regex.PCRE2.Sequence

Methods

makeRegex :: Seq Char -> Regex Source #

makeRegexOpts :: CompOption -> MatchOption -> Seq Char -> Regex Source #

makeRegexM :: MonadFail m => Seq Char -> m Regex Source #

makeRegexOptsM :: MonadFail m => CompOption -> MatchOption -> Seq Char -> m Regex Source #

data ReturnCode Source #

Instances

Instances details
Show ReturnCode Source # 
Instance details

Defined in Text.Regex.PCRE2.Wrap

Methods

showsPrec :: Int -> ReturnCode -> ShowS

show :: ReturnCode -> String

showList :: [ReturnCode] -> ShowS

Eq ReturnCode Source # 
Instance details

Defined in Text.Regex.PCRE2.Wrap

Methods

(==) :: ReturnCode -> ReturnCode -> Bool

(/=) :: ReturnCode -> ReturnCode -> Bool

type WrapError = (ReturnCode, String) Source #

Miscellaneous

getVersion :: Maybe String Source #

Version string of PCRE2 library

Medium level API functions

compile Source #

Arguments

:: CompOption

Flags (summed together)

-> MatchOption

Flags (summed together)

-> Seq Char

The regular expression to compile

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

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

Compiles a regular expression

execute Source #

Arguments

:: Regex

Compiled regular expression

-> Seq Char

(Seq Char) 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 string

regexec Source #

Arguments

:: Regex

compiled regular expression

-> Seq Char

string to match

-> IO (Either WrapError (Maybe (Seq Char, Seq Char, Seq Char, [Seq Char])))

Returns: Nothing if no match, else (text before match, text after match, array of matches with 0 being the whole match)

execute match and extract substrings rather than just offsets

CompOption flags

MatchOption flags, new to v1.0.0.0 (pcre2), replacing the obsolete ExecOptions

Orphan instances

RegexMaker Regex CompOption MatchOption (Seq Char) Source # 
Instance details

Methods

makeRegex :: Seq Char -> Regex Source #

makeRegexOpts :: CompOption -> MatchOption -> Seq Char -> Regex Source #

makeRegexM :: MonadFail m => Seq Char -> m Regex Source #

makeRegexOptsM :: MonadFail m => CompOption -> MatchOption -> Seq Char -> m Regex Source #

RegexLike Regex (Seq Char) Source # 
Instance details

Methods

matchOnce :: Regex -> Seq Char -> Maybe MatchArray Source #

matchAll :: Regex -> Seq Char -> [MatchArray] Source #

matchCount :: Regex -> Seq Char -> Int Source #

matchTest :: Regex -> Seq Char -> Bool Source #

matchAllText :: Regex -> Seq Char -> [MatchText (Seq Char)] Source #

matchOnceText :: Regex -> Seq Char -> Maybe (Seq Char, MatchText (Seq Char), Seq Char) Source #

RegexContext Regex (Seq Char) (Seq Char) Source # 
Instance details

Methods

match :: Regex -> Seq Char -> Seq Char Source #

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