Andrew Welch 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.
Nice one! But note that there are quite some differences between Java
regexes and XSLT regexes. You may be able to compile regexes that are
valid in Java (i.e., matching emptiness, but there are also some
syntactic differences), but not valid in XSLT.
Cheers,
-- Abel Braaksma
--~------------------------------------------------------------------
XSL-List info and archive: http://www.mulberrytech.com/xsl/xsl-list
To unsubscribe, go to: http://lists.mulberrytech.com/xsl-list/
or e-mail: <mailto:xsl-list-unsubscribe(_at_)lists(_dot_)mulberrytech(_dot_)com>
--~--