Subject: Re: [xsl] Empty input in analyze-string From: "Mathieu Malaterre" <mathieu.malaterre@xxxxxxxxx> Date: Fri, 4 Jul 2008 15:35:32 +0200 |
On Fri, Jul 4, 2008 at 3:30 PM, Joe Fawcett <joefawcett@xxxxxxxxxxx> wrote: > Seems to me that the empty string doesn't match or mismatch: > > <data> > <para>C.1</para> > <para>F.1</para> > <para></para> > <para>H.1</para> > <para>F.2</para> > </data> > > <xsl:stylesheet version="2.0" > xmlns:xsl="http://www.w3.org/1999/XSL/Transform"> > <xsl:output method="xml" version="1.0" encoding="UTF-8" indent="yes"/> > <xsl:template match="/"> > <xsl:variable name="myregex">^([CF]\.[0-9\.]+)\s*(.*)$</xsl:variable> > <output> > <xsl:for-each select="data/para"> > <input><xsl:value-of select="."/></input> > <xsl:analyze-string select="." regex="{$myregex}"> > <xsl:matching-substring> > <match> > <xsl:value-of select="."/> > </match> > </xsl:matching-substring> > <xsl:non-matching-substring> > <nonmatch> > <xsl:value-of select="."/> > </nonmatch> > </xsl:non-matching-substring> > </xsl:analyze-string> > </xsl:for-each> > </output> > </xsl:template> > </xsl:stylesheet> > > I get (with Saxon 9.1): > <output> > <input>C.1</input> > <match>C.1</match> > <input>F.1</input> > <match>F.1</match> > <input/> > <input>H.1</input> > <nonmatch>H.1</nonmatch> > <input>F.2</input> > <match>F.2</match> > </output> How, ok I did not realized that, it was simply going through. So how do I make it a non-match ? thanks, -- Mathieu
Current Thread |
---|
|
<- Previous | Index | Next -> |
---|---|---|
Re: [xsl] Empty input in analyze-st, Joe Fawcett | Thread | RE: [xsl] Empty input in analyze-st, Michael Kay |
Re: [xsl] Empty input in analyze-st, Joe Fawcett | Date | RE: [xsl] Empty input in analyze-st, Michael Kay |
Month |