net.sf.saxon.functions
Class Matches
java.lang.Object
net.sf.saxon.expr.ComputedExpression
net.sf.saxon.expr.FunctionCall
net.sf.saxon.functions.SystemFunction
net.sf.saxon.functions.Matches
- All Implemented Interfaces:
- Serializable, SourceLocator, Container, Expression, InstructionInfoProvider
public class Matches
- extends SystemFunction
This class implements the matches() function for regular expression matching
- See Also:
- Serialized Form
Methods inherited from class net.sf.saxon.functions.SystemFunction |
addContextDocumentArgument, checkArguments, computeCardinality, computeSpecialProperties, display, getDetails, getErrorCodeForTypeErrors, getItemType, getRequiredType, main, makeSystemFunction, setDetails, useContextItemAsDefault |
Methods inherited from class net.sf.saxon.expr.FunctionCall |
checkArgumentCount, getDisplayName, getFunctionNameCode, getNumberOfArguments, iterateSubExpressions, optimize, preEvaluate, promote, setArguments, setFunctionNameCode, simplifyArguments, typeCheck |
Methods inherited from class net.sf.saxon.expr.ComputedExpression |
adoptChildExpression, checkPermittedContents, computeDependencies, computeStaticProperties, doPromotion, dynamicError, dynamicError, effectiveBooleanValue, evaluateAsString, getCardinality, getColumnNumber, getConstructType, getDependencies, getExecutable, getHostLanguage, getImplementationMethod, getInstructionInfo, getIntrinsicDependencies, getLineNumber, getLocationId, getLocationProvider, getParentExpression, getPublicId, getSlotsUsed, getSpecialProperties, getSystemId, hasBadParentPointer, iterate, markTailFunctionCalls, process, resetStaticProperties, setLocationId, setParentExpression, suppressValidation, typeError, typeError |
Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
Matches
public Matches()
simplify
public Expression simplify(StaticContext env)
throws XPathException
- Simplify and validate.
This is a pure function so it can be simplified in advance if the arguments are known
- Specified by:
simplify
in interface Expression
- Overrides:
simplify
in class FunctionCall
- Returns:
- the simplified expression
- Throws:
StaticError
- if any error is found (e.g. invalid regular expression)
XPathException
- if an error is discovered during expression
rewriting
evaluateItem
public Item evaluateItem(XPathContext c)
throws XPathException
- Evaluate the matches() function to give a Boolean value.
- Specified by:
evaluateItem
in interface Expression
- Overrides:
evaluateItem
in class ComputedExpression
- Parameters:
c
- The dynamic evaluation context
- Returns:
- the result as a BooleanValue, or null to indicate the empty sequence
- Throws:
XPathException
- on an error
tryToCompile
public static RegularExpression tryToCompile(Expression[] args,
int patternArg,
int flagsArg,
StaticContext env)
throws XPathException
- Try to precompile the arguments to the function. This method is shared by
the implementations of the three XPath functions matches(), replace(), and
tokenize().
- Parameters:
args
- the supplied arguments to the function, as an arraypatternArg
- the position of the argument containing the regular expressionflagsArg
- the position of the argument containing the flags
- Returns:
- the compiled regular expression, or null indicating that the information
is not available statically so it cannot be precompiled
- Throws:
XPathException
- if any failure occurs, in particular, if the regular
expression is invalid