Subject: Re: [xsl] Need to process mixed content(text() and node()) in string matching From: Michael Kay <mike@xxxxxxxxxxxx> Date: Thu, 09 Dec 2010 09:25:28 +0000 |
<para1><xsl:copy-of select="colon/preceding-sibling::node()"/></para1> <para1><xsl:copy-of select="colon/following-sibling::node()"/></para1>
Hi,
I have following scenario:
Source xml is:
<p>This is paragraph text..<b>and bold</b> and normal<i>and italic</i> with value: ParagraphValue.</p>
The XSLT should match the string (mixed with text() of<p>, content of element<i>,<b>) as " This is paragraph text..and bold and normal and italic with value" in<p> element and desired output given below.
<paragraph1>This is paragraph text..<b>and bold</b> and normal<i>and italic</i> with value</paragraph1> <paragraph2>ParagraphValue.</paragraph2>
I tried with following approach:
<xsl:template match="p"> <xsl:choose> <xsl:when test="contains(. , ':')"> <paragraph1><xsl:value-of select="substring-before(., ':')"/></paragraph1> <paragraph2><xsl:value-of select="substring-after(., ':')"/></paragraph2> </xsl:when> <xsl:otherwise><paragraph1><xsl:avlue-of select="."/></paragraph1></xsl:otherwise> </xsl:choose> </xsl:template>
But with I could get only string but not elements<b> and<i> alongwith its content.
Any suggestions on what would be best approach to achieve this?
Thanks in advance...
Current Thread |
---|
|
<- Previous | Index | Next -> |
---|---|---|
Re: [xsl] Need to process mixed con, Imsieke, Gerrit, le- | Thread | [xsl] Namespace issue, Silent lights |
Re: [xsl] Need to process mixed con, Imsieke, Gerrit, le- | Date | [xsl] Namespace issue, Silent lights |
Month |