Class JRegularExpression

  • All Implemented Interfaces:
    java.io.Serializable, RegularExpression

    public class JRegularExpression
    extends java.lang.Object
    implements RegularExpression
    A compiled regular expression implemented using the Java JDK regex package
    See Also:
    Serialized Form
    • Field Summary

      Fields 
      Modifier and Type Field Description
      (package private) java.util.regex.Pattern pattern  
    • Constructor Summary

      Constructors 
      Constructor Description
      JRegularExpression​(java.lang.CharSequence regex, boolean isXPath, java.lang.CharSequence flags)
      Create (compile) a regular expression
    • Method Summary

      All Methods Static Methods Instance Methods Concrete Methods 
      Modifier and Type Method Description
      RegexIterator analyze​(java.lang.CharSequence input)
      Use this regular expression to analyze an input string, in support of the XSLT analyze-string instruction.
      boolean containsMatch​(java.lang.CharSequence input)
      Determine whether the regular expression contains a match for a given string
      boolean matches​(java.lang.CharSequence input)
      Determine whether the regular expression match a given string in its entirety
      java.lang.CharSequence replace​(java.lang.CharSequence input, java.lang.CharSequence replacement)
      Replace all substrings of a supplied input string that match the regular expression with a replacement string.
      static int setFlags​(java.lang.CharSequence inFlags)
      Set the Java flags from the supplied XPath flags.
      SequenceIterator tokenize​(java.lang.CharSequence input)
      Use this regular expression to tokenize an input string.
      • Methods inherited from class java.lang.Object

        clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    • Field Detail

      • pattern

        java.util.regex.Pattern pattern
    • Constructor Detail

      • JRegularExpression

        public JRegularExpression​(java.lang.CharSequence regex,
                                  boolean isXPath,
                                  java.lang.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 Detail

      • analyze

        public RegexIterator analyze​(java.lang.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​(java.lang.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​(java.lang.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 java.lang.CharSequence replace​(java.lang.CharSequence input,
                                              java.lang.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​(java.lang.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​(java.lang.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