fn:matches

Returns true if the given string matches the given regular expression.

matches($input as xs:string?, $pattern as xs:string) ➔ xs:boolean

Arguments

 

$input

xs:string?

The string to be matched against a regular expression

 

$pattern

xs:string

The regular expression

Result

xs:boolean

matches($input as xs:string?, $pattern as xs:string, $flags as xs:string) ➔ xs:boolean

Arguments

 

$input

xs:string?

The string to be matched against a regular expression

 

$pattern

xs:string

The regular expression

 

$flags

xs:string

Flags that control the interpretation of the regular expression

Result

xs:boolean

Namespace

http://www.w3.org/2005/xpath-functions

Links to W3C specifications

XPath 3.1 Functions and Operators

Saxon availability

Available in XPath 2.0, XSLT 2.0, XQuery 1.0, and later versions. Available in all Saxon editions.

Notes on the Saxon implementation

Saxon 9.3 introduced support for the q flag, and for XPath 3.0 regular expression enhancements, provided XPath 3.0 is enabled.

Saxon implements some extensions to the flags argument. The value of this argument contains the standard flags defined in the spec (i, m, s, x, q) followed optionally by a semicolon and then Saxon-specific flags. The Saxon-specific flags are:

In the case of fn:replace(), if the platform-native regex engine is used (Java or .NET) then the syntax for the replacement expression in the third argument also follows the rules for the platform. For example, the syntax ${name} can be used in a reference to a named captured group.