net.sf.saxon.java
Class JRegularExpression
java.lang.Object
net.sf.saxon.java.JRegularExpression
- RegularExpression, Serializable
public class JRegularExpression
extends java.lang.Object
A compiled regular expression implemented using the Java JDK regex package
JRegularExpression(CharSequence regex, int xmlVersion, int syntax, int flagBits) - Create (compile) a regular expression
|
JRegularExpression(String javaRegex, int flagBits) - Create a regular expression, starting with an already-translated Java regex
|
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.
|
JRegularExpression
public JRegularExpression(CharSequence regex,
int xmlVersion,
int syntax,
int flagBits)
throws XPathException
Create (compile) a regular expression
regex
- the source text of the regular expression, in XML Schema or XPath syntaxxmlVersion
- indicates whether \i and \c have their XML 1.0 or XML 1.1 meaningssyntax
- indicates whether XPath, XML Schema, or Java native regular expression syntax is to be usedflagBits
- the flags argument translated to the Java bit-significant integer representation
XPathException
- if the syntax of the regular expression or flags is incorrect
JRegularExpression
public JRegularExpression(String javaRegex,
int flagBits)
Create a regular expression, starting with an already-translated Java regex
javaRegex
- the regular expression after translation to Java notationflagBits
- the option bits, derived from the user-specified flags
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.
- analyze in interface RegularExpression
containsMatch
public boolean containsMatch(CharSequence input)
Determine whether the regular expression contains a match for a given string
- containsMatch in interface RegularExpression
input
- the string to match
- true if the string matches, false otherwise
getFlagBits
public int getFlagBits()
Get the flag bits as used by the Java regular expression engine
getJavaRegularExpression
public String getJavaRegularExpression()
Get the Java regular expression (after translation from an XPath regex, but before compilation)
- the regular expression in Java notation
matches
public boolean matches(CharSequence input)
Determine whether the regular expression match a given string in its entirety
- matches in interface RegularExpression
input
- the string to match
- 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.
- replace in interface RegularExpression
input
- the input string on which replacements are to be performedreplacement
- the replacement string in the format of the XPath replace() function
- the result of performing the replacement
setFlags
public static int setFlags(CharSequence inFlags)
throws XPathException
Set the Java flags from the supplied XPath flags.
inFlags
- the flags as a string, e.g. "im"
- the flags as a bit-significant integer
tokenize
public SequenceIterator tokenize(CharSequence input)
Use this regular expression to tokenize an input string.
- tokenize in interface RegularExpression
input
- the string to be tokenized
- a SequenceIterator containing the resulting tokens, as objects of type StringValue