Subject: RE: [xsl] substring-before<tab/>... substring-after<tab/> take 2 From: "Michael Kay" <michael.h.kay@xxxxxxxxxxxx> Date: Mon, 24 Feb 2003 17:04:46 -0000 |
> > I am sorry to pester again, but nobody has had a response... Is this > impossible to do in straight XSLT??? I saw a response... But you didn't get many responses because you didn't phrase the question very clearly. Will there always be exactly one <tab/> element, or is it a variable number? Are there other elements that can appear? The simplest solution to this is to ignore the <tab/> elements and process the text nodes, but it is a bit sensitive to the presence of extraneous things like comments. Just do <xsl:template match="para"> <xsl:for-each select="text()"> <td><xsl:copy-of select="."/></td> </xsl:for-each> This may give you problems with MSXML3, which doesn't always normalize text nodes properly. A more robust solution would be to recurse over the siblings, something like <xsl:template match="para"> <xsl:apply-template select="child::node()[1]" mode="along"/> </xsl:template> <xsl:template match="tab | text()[1]" mode="along"> <td> <xsl:apply-templates match="following-sibling::node()[1][self::text()]" mode="along"/> </td> <xsl:apply-templates match="following-sibling::tab"/> </xsl:template> <xsl:template match="text()" mode="along"> <xsl:apply-templates match="following-sibling::node()[1][self::text()]" mode="along"/> </xsl:template> Michael Kay Software AG home: Michael.H.Kay@xxxxxxxxxxxx work: Michael.Kay@xxxxxxxxxxxxxx > > > (From my Friday email) > I am trying to get the text before and after the <tab/> > demarcation in > order to insert the strings into separate fields in a table. > > <!-- using xsl:copy-of --> > <para style="T2">Provider<tab/>The name of > the provider > to use for the connection.</para> > > I can't think of a way to get the information separated... > when I output > the <xsl:value-of> on the same node I get: > > <para>ProviderThe name of the provider to use for the > connection.</para> > > I looked on the FAQs and archives but I didn't quite know how to word > this query. > > > Any suggestions would be greatly appreciated! > > Thank you in advance and Happy Monday (if that isn't too much of an > oxymoron) > > Deb Berkson > > > > XSL-List info and archive: http://www.mulberrytech.com/xsl/xsl-list > XSL-List info and archive: http://www.mulberrytech.com/xsl/xsl-list
Current Thread |
---|
|
<- Previous | Index | Next -> |
---|---|---|
RE: [xsl] substring-before<tab/>..., bryan | Thread | [xsl] Re: substring-before<tab/>..., Dimitre Novatchev |
Re: [xsl] Global extension function, Karl Stubsjoen | Date | RE: [xsl] Global extension function, Michael Kay |
Month |