Re: [xsl] check the type of the $pattern argument to a regular expression?

Subject: Re: [xsl] check the type of the $pattern argument to a regular expression?
From: "bryan rasmussen" <rasmussen.bryan@xxxxxxxxx>
Date: Mon, 16 Apr 2007 14:52:57 +0200
Is there a concise description somewhere as to how they differ, are
there a large number of xslt regular expressions that are compatible
with Java regular expressions or are they basically incompatible? I
would suppose the main difference is that XSL-T regular expressions
are Unicode compatible regex's  - correct?

Cheers,
Bryan Rasmussen

On 4/16/07, Michael Kay <mike@xxxxxxxxxxxx> wrote:
> 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/

Current Thread