Package net.sf.saxon.regex
Interface RegularExpression
-
- All Known Implementing Classes:
ARegularExpression,JavaRegularExpression
public interface RegularExpressionThis interface represents a compiled regular expression. There are different implementations for different regex engines
-
-
Method Summary
All Methods Instance Methods Abstract Methods Modifier and Type Method Description RegexIteratoranalyze(UnicodeString input)Use this regular expression to analyze an input string, in support of the XSLT analyze-string instruction.booleancontainsMatch(UnicodeString input)Determine whether the regular expression contains a match of a given stringjava.lang.StringgetFlags()Get the flags used at the time the regular expression was compiled.booleanisPlatformNative()Ask whether the regular expression is using platform-native syntax (Java or .NET), or XPath syntaxbooleanmatches(UnicodeString input)Determine whether the regular expression matches a given string in its entiretyUnicodeStringreplace(UnicodeString input, UnicodeString replacement)Replace all substrings of a supplied input string that match the regular expression with a replacement string.UnicodeStringreplaceWith(UnicodeString input, java.util.function.Function<UnicodeString,UnicodeString> replacement)Replace all substrings of a supplied input string that match the regular expression with a replacement string.AtomicIteratortokenize(UnicodeString input)Use this regular expression to tokenize an input string.
-
-
-
Method Detail
-
matches
boolean matches(UnicodeString input)
Determine whether the regular expression matches a given string in its entirety- Parameters:
input- the string to match- Returns:
- true if the string matches, false otherwise
-
containsMatch
boolean containsMatch(UnicodeString input)
Determine whether the regular expression contains a match of a given string- Parameters:
input- the string to match- Returns:
- true if the string matches, false otherwise
-
tokenize
AtomicIterator tokenize(UnicodeString input)
Use this regular expression to tokenize an input string.- Parameters:
input- the string to be tokenized- Returns:
- a SequenceIterator containing the resulting tokens, as objects of type StringValue
-
analyze
RegexIterator analyze(UnicodeString 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.- Parameters:
input- the character string to be analyzed using the regular expression- Returns:
- an iterator over matched and unmatched substrings
-
replace
UnicodeString replace(UnicodeString input, UnicodeString replacement) throws XPathException
Replace all substrings of a supplied input string that match the regular expression with a replacement string.- Parameters:
input- the input string on which replacements are to be performedreplacement- 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
-
replaceWith
UnicodeString replaceWith(UnicodeString input, java.util.function.Function<UnicodeString,UnicodeString> replacement) throws XPathException
Replace all substrings of a supplied input string that match the regular expression with a replacement string.- Parameters:
input- the input string on which replacements are to be performedreplacement- a function that is called once for each matching substring, and that returns a replacement for that substring- Returns:
- the result of performing the replacement
- Throws:
XPathException- if the replacement string is invalid
-
getFlags
java.lang.String getFlags()
Get the flags used at the time the regular expression was compiled.- Returns:
- a string containing the flags
-
isPlatformNative
boolean isPlatformNative()
Ask whether the regular expression is using platform-native syntax (Java or .NET), or XPath syntax- Returns:
- true if using platform-native syntax
-
-