Subject: RE: check the type of the $pattern argument to a regular expression?
From: "Michael Kay" <mike@xxxxxxxxxxxx>
Date: Mon, 16 Apr 2007 12:58:40 +0100
|
> This is one way to way check if a pattern is valid:
>
> <xsl:stylesheet version="2.0"
> xmlns:regex="java.util.regex.Pattern"
> xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
> xmlns:saxon="http://saxon.sf.net/">
>
> <xsl:template match="/">
> <xsl:value-of select="saxon:try(regex:compile(']['),
> 'false')"/> </xsl:template>
>
> </xsl:stylesheet>
>
> This attempts to compile the regex using Java, and catches
> the PatternSyntaxException using Saxon SA's saxon:try()
> function. In this case it returns "false" because "][" is invalid.
Java regular expressions and XPath regular expressions are not the same
thing!
Michael Kay
http://www.saxonica.com/
|