xsl-list
[Top] [All Lists]

RE: [xsl] regex help, please

2010-01-21 17:22:06
I suspect you meant select="doctext" regex="|".

"|" is a metacharacter in regular expressions. It needs to be escaped as \|
(or if you prefer, [|])

Regards,

Michael Kay
http://www.saxonica.com/
http://twitter.com/michaelhkay  

-----Original Message-----
From: Brian Newman [mailto:brian(_dot_)newman(_at_)nssplus(_dot_)com] 
Sent: 21 January 2010 23:08
To: xsl-list(_at_)lists(_dot_)mulberrytech(_dot_)com
Subject: [xsl] regex help, please

I've got a pipe delimited list of data which I'd like to turn 
into an Xml doc for further processing.

So, I use code something like 

<xsl:stylesheet version="2.0" 
xmlns:xsl="http://www.w3.org/1999/XSL/Transform"; 
xmlns:fo="http://www.w3.org/1999/XSL/Format"; 
xmlns:xs="http://www.w3.org/2001/XMLSchema"; 
xmlns:fn="http://www.w3.org/2005/xpath-functions";>
<xsl:template match="/">
<xsl:analyze-string regex="doctext" select='|'> 
<xsl:matching-substring></xsl:matching-substring>
<xsl:non-matching-substring><item><xsl:value-of 
select="."/></item></xsl:non-matching-substring>
</xsl:analyze-string>
<xsl:copy>
      <xsl:value-of select="$doctext/node()"/> </xsl:copy> 
</xsl:template> </xsl:stylesheet>

Which doesn't work - it doesn't recognize the pipe as a regex.
What should that regex be?
I've also tried /| and [|].



--~------------------------------------------------------------------
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>
--~--



--~------------------------------------------------------------------
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>
--~--

<Prev in Thread] Current Thread [Next in Thread>