Package net.sf.saxon.regex
Interface RegularExpression
- All Known Implementing Classes:
ARegularExpression
,JavaRegularExpression
public interface RegularExpression
This interface represents a compiled regular expression. There are different
implementations for different regex engines
-
Method Summary
Modifier and TypeMethodDescriptionanalyze
(UnicodeString input) Use this regular expression to analyze an input string, in support of the XSLT analyze-string instruction.boolean
containsMatch
(UnicodeString input) Determine whether the regular expression contains a match of a given stringgetFlags()
Get the flags used at the time the regular expression was compiled.boolean
Ask whether the regular expression is using platform-native syntax (Java or .NET), or XPath syntaxboolean
matches
(UnicodeString input) Determine whether the regular expression matches a given string in its entiretyreplace
(UnicodeString input, UnicodeString replacement) Replace all substrings of a supplied input string that match the regular expression with a replacement string.replaceWith
(UnicodeString input, BiFunction<UnicodeString, UnicodeString[], UnicodeString> replacement) Replace all substrings of a supplied input string that match the regular expression with a replacement string.tokenize
(UnicodeString input) Use this regular expression to tokenize an input string.
-
Method Details
-
matches
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
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
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
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
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, BiFunction<UnicodeString, UnicodeString[], throws XPathExceptionUnicodeString> replacement) 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
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
-