[xsl] Special characters in regex expression

Subject: [xsl] Special characters in regex expression
From: "Gabor Toth bewindoki@xxxxxxxxx" <xsl-list-service@xxxxxxxxxxxxxxxxxxxxxx>
Date: Wed, 23 Jul 2014 14:54:43 -0000
Dear All,

I am using xsl:analyze-string to retrieve and replace punctuation, however, I
got the following error:

 Error in regular expression: net.sf.saxon.trans.XPathException: Syntax error
at char 6 in regular expression: Escape character '!' not allowed.

How should I escape and match '?' and '!' ? I am also using a negative
look-ahead, why isn't that working?

Here is a sample from my code, thanks,


<xsl:template match="//TEI:p//text()[ not
 <xsl:analyze-string select="." regex="(\.|\!|\?)(?!\)|\.|\d|\w)">
                <xsl:element name="seg"
                <xsl:value-of select="."/>

Current Thread