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

Safe HaskellNone

Text.Regex.PCRE.Sequence

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

Flags (summed together)

-> ExecOption

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

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

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

Constants for CompOption

Constants for ExecOption