Overview | Package | Class | Deprecated | Help
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD

## net.sf.saxon.java
Class JRegularExpression

    java.lang.Object
      net.sf.saxon.java.JRegularExpression

All Implemented Interfaces:
  Serializable, RegularExpression

    public class JRegularExpression

extends Object
implements RegularExpression

A compiled regular expression implemented using the Java JDK regex package

See Also:
  Serialized Form

Constructor Summary
`JRegularExpression(CharSequence regex, boolean isXPath, int flagBits)` Create (compile) a regular expression
`JRegularExpression(String javaRegex, int flagBits)` Create a regular expression, starting with an already-translated Java regex

Method Summary
`RegexIterator` | `analyze(CharSequence input)` Use this regular expression to analyze an input string, in support of the XSLT analyze-string instruction.
`boolean` | `containsMatch(CharSequence input)` Determine whether the regular expression contains a match for a given string
`int` | `getFlagBits()` Get the flag bits as used by the Java regular expression engine
`String` | `getJavaRegularExpression()` Get the Java regular expression (after translation from an XPath regex, but before compilation)
`boolean` | `matches(CharSequence input)` Determine whether the regular expression match a given string in its entirety
`CharSequence` | `replace(CharSequence input, CharSequence replacement)` Replace all substrings of a supplied input string that match the regular expression with a replacement string.
`static int` | `setFlags(CharSequence inFlags)` Set the Java flags from the supplied XPath flags.
`SequenceIterator` | `tokenize(CharSequence input)` Use this regular expression to tokenize an input string.

Methods inherited from class java.lang.Object
`equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

Constructor Detail

### JRegularExpression

    public JRegularExpression(String javaRegex,
                              int flagBits)

  Create a regular expression, starting with an already-translated Java regex

### JRegularExpression

    public JRegularExpression(CharSequence regex,
                              boolean isXPath,
                              int flagBits)
                       throws XPathException

  Create (compile) a regular expression

  Parameters:
    `regex` - the source text of the regular expression, in XML Schema or XPath syntax
    `isXPath` - set to true if this is an XPath regular expression, false if it is XML Schema
    `flagBits` - the flags argument translated to the Java bit-significant integer representation
  Throws:
    `XPathException` - if the syntax of the regular expression or flags is incorrect

Method Detail

### getJavaRegularExpression

    public String getJavaRegularExpression()

  Get the Java regular expression (after translation from an XPath regex, but before compilation)

### getFlagBits

    public int getFlagBits()

  Get the flag bits as used by the Java regular expression engine

### analyze

    public RegexIterator analyze(CharSequence input)

  Use this regular expression to analyze an input string, in support of the XSLT analyze-string instruction. The resulting RegexIterator provides both the matching and non-matching substrings, and allows them to be distinguished. It also provides access to matched subgroups.

  Specified by:
    `analyze` in interface `RegularExpression`

### containsMatch

    public boolean containsMatch(CharSequence input)

  Determine whether the regular expression contains a match for a given string

  Specified by:
    `containsMatch` in interface `RegularExpression`
  Parameters:
    `input` - the string to match
  Returns:
    true if the string matches, false otherwise

### matches

    public boolean matches(CharSequence input)

  Determine whether the regular expression match a given string in its entirety

  Specified by:
    `matches` in interface `RegularExpression`
  Parameters:
    `input` - the string to match
  Returns:
    true if the string matches, false otherwise

### replace

    public CharSequence replace(CharSequence input,
                                CharSequence replacement)
                         throws XPathException

  Replace all substrings of a supplied input string that match the regular expression with a replacement string.

  Specified by:
    `replace` in interface `RegularExpression`
  Parameters:
    `input` - the input string on which replacements are to be performed
    `replacement` - the replacement string in the format of the XPath replace() function
  Returns:
    the result of performing the replacement
  Throws:
    `XPathException` - if the replacement string is invalid

### tokenize

    public SequenceIterator tokenize(CharSequence input)

  Use this regular expression to tokenize an input string.

  Specified by:
    `tokenize` in interface `RegularExpression`
  Parameters:
    `input` - the string to be tokenized
  Returns:
    a SequenceIterator containing the resulting tokens, as objects of type StringValue

### setFlags

    public static int setFlags(CharSequence inFlags)
                        throws DynamicError

  Set the Java flags from the supplied XPath flags.

  Parameters:
    `inFlags` - the flags as a string, e.g. "im"
  Returns:
    the flags as a bit-significant integer
  Throws:
    `DynamicError` - if the supplied value is invalid

Overview | Package | Class | Deprecated | Help
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD

Copyright (C) Michael H. Kay. All rights reserved.