RE: [xsl] replace special characters by element tags

Subject: RE: [xsl] replace special characters by element tags
From: "Michael Kay" <mike@xxxxxxxxxxxx>
Date: Mon, 19 Mar 2007 16:43:06 -0000
<xsl:analyze-string select="..." regex="<([^>]*)>">
  <xsl:matching-substring>
    <i><xsl:value-of select="regex-group(1)"/></i>
  </xsl:matching-substring>
  <xsl:non-matching-substring>
    <xsl:value-of select="."/>
  </xsl:non-matching-substring>
</xsl:analyze-string>

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

> -----Original Message-----
> From: Frank Marent [mailto:frank.marent@xxxxxxxxxxx] 
> Sent: 19 March 2007 16:17
> To: Xsl-List
> Subject: [xsl] replace special characters by element tags
> 
> hi all
> 
> i have difficulties in resolving the following (standard?) 
> process in xslt 2.0:
> 
>    "replace in text() <any text> strings by <i>any text</i>"
> 
> whereas <any text> can appear several times in text() and 
> different text can be in the quotes like <any other text> or 
> <yet another silly text>.
> 
>    <Body>This is a nice <test> with several <means> traps in 
> it. Can you <transform this correctly?</Body>
> 
> should result:
> 
>    <Body>This is a nice <i>test</i> with several <i>means</i> 
> traps in it. Can you <transform this correctly?</Body>
> 
> is there an xslt 2.0 saxon solution for that case?
> 
> any help is very appreciated.
> 
> from zurich
> frank

Current Thread