Package net.sf.saxon.regex


package net.sf.saxon.regex

This package contains the code to map XML Schema and XPath regular expressions to a regular expression engine of the underlying Java platform.

Most of the classes implement a regular expression engine derived from Apache's Jakarta project. The code of Jakarta has been modified so that the regular expressions implement the syntax of XSD/XPath regular expressions. There have also been extensive changes for performance reasons

In addition, there are classes to provide direct access to the native JDK regular expression engine. The flags value ";j" may be used to select this engine. The resulting syntax/semantics will not be an exact match to the XPath definition.

Users should not normally need to use these classes directly.

Earlier versions of Saxon included a translator from XPath regular expressions to Java regular expressions, based on that produced by James Clark. This mechanism is no longer used.

  • Class
    Description
    Class ARegexIterator - provides an iterator over matched and unmatched substrings.
    Glue class to interface the Jakarta regex engine to Saxon (The prefix 'A' indicates an Apache regular expression, as distinct from a JDK regular expression).
    A ATokenIterator is an iterator over the strings that result from tokenizing a string using a regular expression
    Represents a match of a captured subgroup
    This singleton class holds data about the case-variants of Unicode characters.
    The History object is used to avoid backtracking too far.
    An implementation of RegularExpression that calls the JDK regular expression library directly.
    Class JRegexIterator - provides an iterator over matched and unmatched substrings.
    A JTokenIterator is an iterator over the strings that result from tokenizing a string using a regular expression, in this case a regular expression evaluated using the JDK regex engine
    A match against a fixed string of any length, within a regular expression
    A back-reference in a regular expression
    Beginning of Line (^) in a regular expression
    Open paren (captured group) within a regular expression
    A match of a single character in the input against a set of permitted characters
    A choice of several branches within a regular expression
    End of program in a regular expression
    End of Line ($) in a regular expression
    Represents an operation or instruction in the regular expression program.
    The ForceProgressIterator is used to protect against non-termination; specifically, iterators that return an infinite number of zero-length matches.
    Handle a greedy repetition (with possible min and max) where the size of the repeated unit is fixed.
    Match empty string within a regular expression
    Handle a reluctant repetition (with possible min and max) where the size of the repeated unit is fixed.
    Handle a repetition (with possible min and max) where the size of the repeated unit is variable.
    A sequence of multiple pieces in a regular expression
    Operation that wraps a base operation and traces its execution
    Handle a repetition where there is no ambiguity; if the repeated term is matched in the string, then it cannot match anything other than the repeated term.
    A regular expression compiler class.
    Class representing a set of regular expression flags (some combination of i, m, s, x, q).
    This interface defines an iterator that supports the evaluation of xsl:analyze-string.
    Interface defining a call-back action for processing captured groups within a regular expression
    A precondition that must be true if a regular expression is to match
    This interface represents a compiled regular expression.
    RE is an efficient, lightweight regular expression evaluator/matcher class.
     
    A class that holds compiled regular expressions.
    Exception thrown to indicate a syntax error in a regular expression.
    This singleton class provides knowledge of the names and contents of Unicode character blocks, as referenced using the \p{IsXXXXX} construct in a regular expression.