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

Safe HaskellNone

Text.Regex.PCRE.ByteString.Lazy

Contents

Description

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

Synopsis

Types

data Regex

A compiled regular expression

Instances

RegexLike Regex String 
RegexLike Regex ByteString 
RegexLike Regex ByteString 
RegexOptions Regex CompOption ExecOption 
RegexContext Regex String String 
RegexContext Regex ByteString ByteString 
RegexContext Regex ByteString ByteString 
RegexMaker Regex CompOption ExecOption String 
RegexMaker Regex CompOption ExecOption ByteString 
RegexMaker Regex CompOption ExecOption ByteString 
RegexMaker Regex CompOption ExecOption (Seq Char) 
RegexLike Regex (Seq Char) 
RegexContext Regex (Seq Char) (Seq Char) 

type MatchOffset = Int

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

type MatchLength = Int

non-negative length of a match

data ReturnCode

Instances

type WrapError = (ReturnCode, String)

Miscellaneous

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

ExecOption flags