Class JRegularExpression

java.lang.Object
net.sf.saxon.regex.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:
  • Field Details

  • Constructor Details

    • JRegularExpression

      public JRegularExpression(CharSequence regex, boolean isXPath, CharSequence flags) 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
      flags - the flags argument as supplied to functions such as fn:matches(), in string form
      Throws:
      XPathException - if the syntax of the regular expression or flags is incorrect
  • Method Details

    • 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