From: Frederic Schoovaerts (fschoova@ulb.ac.be)
Date: 10/06/2003 - 10:43
Bonjour a tous et merci pour votre contribution.
J'ai recu une aimable solution de fortune, la voici.
xml
<test>
<code>monObjetJavaBordel</code>
<code>autreObjetJavaBrol</code>
</test>
page xsl
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
<xsl:output method="xml" version="1.0"/>
<xsl:template match="/">
<voila>
<xsl:apply-templates/>
</voila>
</xsl:template>
<xsl:template match="code">
<xsl:variable name="A">
<xsl:call-template name="replace-text">
<xsl:with-param name="text" select="."/>
<xsl:with-param name="replace" select="'A'"/>
<xsl:with-param name="by" select="'_a'"/>
</xsl:call-template>
</xsl:variable>
<xsl:variable name="B">
<xsl:call-template name="replace-text">
<xsl:with-param name="text" select="$A"/>
<xsl:with-param name="replace" select="'B'"/>
<xsl:with-param name="by" select="'_b'"/>
</xsl:call-template>
</xsl:variable>
<!-- ... -->
<xsl:variable name="J">
<xsl:call-template name="replace-text">
<xsl:with-param name="text" select="$B"/>
<xsl:with-param name="replace" select="'J'"/>
<xsl:with-param name="by" select="'_j'"/>
</xsl:call-template>
</xsl:variable>
<!-- ... -->
<xsl:variable name="O">
<xsl:call-template name="replace-text">
<xsl:with-param name="text" select="$J"/>
<xsl:with-param name="replace" select="'O'"/>
<xsl:with-param name="by" select="'_o'"/>
</xsl:call-template>
</xsl:variable>
<!-- ... -->
<xsl:variable name="Z">
<xsl:call-template name="replace-text">
<xsl:with-param name="text" select="$O"/>
<xsl:with-param name="replace" select="'Z'"/>
<xsl:with-param name="by" select="'_z'"/>
</xsl:call-template>
</xsl:variable>
<!-- ************************************* -->
<nouveau-code>
<xsl:copy-of select="$Z"/>
</nouveau-code>
</xsl:template>
<!-- template that does a search & replace -->
<xsl:template name="replace-text">
<xsl:param name="text"/>
<xsl:param name="replace"/>
<xsl:param name="by"/>
<xsl:choose>
<xsl:when test="contains($text, $replace)">
<xsl:value-of select="substring-before($text, $replace)"/>
<xsl:value-of select="$by" disable-output-escaping="yes"/>
<xsl:call-template name="replace-text">
<xsl:with-param name="text" select="substring-after($text, $replace)"/>
<xsl:with-param name="replace" select="$replace"/>
<xsl:with-param name="by" select="$by"/>
</xsl:call-template>
</xsl:when>
<xsl:otherwise>
<xsl:value-of select="$text"/>
</xsl:otherwise>
</xsl:choose>
</xsl:template>
</xsl:stylesheet>
Merci encore.
--
Devenez redacteur <XML>fr et contribuez au developpement du
xml francophone (http://xmlfr.org/infos/redacteurs/) !
Liste de diffusion "xml-tech@xmlfr.org" (http://xmlfr.org).
Cette liste est a votre disposition pour discuter en francais de
tout sujet technique lie a XML.
Pour resilier votre abonnement, envoyez un message contenant
la commande "unsubscribe" a xml-tech-request@xmlfr.org
(mailto:xml-tech-request@xmlfr.org?Subject=unsubscribe)
Archive générée par hypermail 2.1.3 le 28/06/2004 - 11:06 UTC
webmaster@xmlfr.org
|