regexdot-0.10.2.1: A /polymorphic/, POSIX, extended regular-expression engine.

RegExDot.Anchor

Contents

Description

AUTHOR
Dr. Alistair Ward
DESCRIPTION
  • A type of zero-width assertion: the Bow-predicate is True if no input-data has yet been consumed; the Stern-predicate is True if no input-data remains to be consumed.
  • Whilst at the top-level of the regex, the absence of an anchor is equivalent to a non-capturing .*?, tempting one to implement them using this property, it doesn't apply to those anchors encountered at either end of a sub-expression. So in all cases, an anchor constrains the permissible consumption of input-data, but at the top level it also prevents the regex drifting away from either end of the input-data.

Synopsis

Types

Data-types

data Anchor Source

Defines the types on anchor by which a regex can be moored to a part of the input-data.

Constructors

Bow

Matches only if no input data has yet been consumed. Can only exist at the start of the entire regex, or (in theory) the start of any alternative.

Stern

Matches only if no input data remains to be consumed. Can only exist at the end of the entire regex, or (in theory) the end of any alternative.

Constants

bowToken :: CharSource

The conventional token used to denote a Bow-anchor, when in String-form.

sternToken :: CharSource

The conventional token used to denote a Stern-anchor, when in String-form.

tokens :: StringSource

The set of Char to which a specific meaning is attributed, when reading from String.