|
Subject: [xsl] search and replace multiple characters fails From: Greg Martel <gregm@xxxxxxxxxxx> Date: Fri, 19 Oct 2001 06:42:02 -0500 |
<xsl:template name="SANDR"> <xsl:param name="string"/> <xsl:param name="newchar1"/> <xsl:param name="newchar2"/> <xsl:param name="newchar3"/> <xsl:param name="newchar4"/> <xsl:param name="newchar5"/> <xsl:choose> <xsl:when test="contains($string, '’')"> <xsl:value-of select="substring-before($string, '’')"/> <xsl:value-of select="$newchar1"/> <xsl:call-template name="SANDR"> <xsl:with-param name="string" select="substring-after($string, '’')"/> <xsl:with-param name="newchar1" select="$newchar1"/> </xsl:call-template> </xsl:when>
<xsl:when test="contains($string, '•')">
<xsl:value-of select="substring-before($string, '•')" />
<xsl:value-of select="$newchar2"/>
<xsl:call-template name="SANDR">
<xsl:with-param name="string"
select="substring-after($string, '•')"/>
<xsl:with-param name="newchar2" select="$newchar2"/>
</xsl:call-template>
</xsl:when><xsl:when test="contains($string, '▪')">
<xsl:value-of select="substring-before($string, '▪')"/>
<xsl:value-of select="$newchar3"/>
<xsl:call-template name="SANDR">
<xsl:with-param name="string"
select="substring-after($string, '▪')"/>
<xsl:with-param name="newchar3" select="$newchar3"/>
</xsl:call-template>
</xsl:when><xsl:when test="contains($string, '@')">
<xsl:value-of select="substring-before($string, '@')"/>
<xsl:value-of select="$newchar4"/>
<xsl:call-template name="SANDR">
<xsl:with-param name="string"
select="substring-after($string, '@')"/>
<xsl:with-param name="newchar4" select="$newchar4"/>
</xsl:call-template>
</xsl:when><xsl:when test="contains($string, '–')">
<xsl:value-of select="substring-before($string, '–')"/>
<xsl:value-of select="$newchar5"/>
<xsl:call-template name="SANDR">
<xsl:with-param name="string"
select="substring-after($string, '–')"/>
<xsl:with-param name="newchar5" select="$newchar5"/>
</xsl:call-template>
</xsl:when><xsl:otherwise><xsl:value-of select="$string" /></xsl:otherwise> </xsl:choose> </xsl:template>
<xsl:template name="SANDR"> <xsl:call-template name="CHARFIX1"> <xsl:with-param name="string" select="."/> <xsl:with-param name="newchar1" select="'<\#39>'"/> </xsl:call-template>
<xsl:call-template name="CHARFIX2"> <xsl:with-param name="string" select="."/> <xsl:with-param name="newchar2" select="'<\#165>'"/> </xsl:call-template>
&etc, for CHARFIX3, CHARFIX4, CHARFIX5 </xsl:call-template> </xsl:template>
<xsl:template name="CHARFIX1"> <xsl:param name="string"/> <xsl:param name="newchar1"/> <xsl:if test="contains($string, '’')"> <xsl:value-of select="substring-before($string, '’')"/> <xsl:value-of select="$newchar1"/> <xsl:value-of select="substring-after($string, '’')"/></xsl:if> </xsl:template>
<xsl:template name="CHARFIX5"> <xsl:param name="string"/> <xsl:param name="newchar5"/> <xsl:choose> <xsl:when test="contains($string, '–')"> <xsl:value-of select="substring-before($string, '–')"/> <xsl:value-of select="$newchar5"/> <xsl:value-of select="substring-after($string, '–')"/> </xsl:when> <xsl:otherwise> <xsl:choose> <xsl:when test="contains($string, '’')"></xsl:when> <xsl:when test="contains($string, '•')"></xsl:when> <xsl:when test="contains($string, '▪')"></xsl:when> <xsl:when test="contains($string, '@')"></xsl:when> <xsl:otherwise><xsl:value-of select="$string"/></xsl:otherwise> </xsl:choose> </xsl:otherwise> </xsl:choose> </xsl:template>
-- Thanks Muchos,
-- Thanks Muchos,
Greg Martel Coordinator of Enchiladas
| Current Thread |
|---|
|
| <- Previous | Index | Next -> |
|---|---|---|
| RE: [xsl] omit-xml-declaration="yes, Michael Kay | Thread | Re: [xsl] search and replace multip, Jeni Tennison |
| RE: [xsl] accessing info outside cu, Chris Bayes | Date | Escaped Character Entity's and the , jdgarrett |
| Month |