Subject: RE: How to Tag Several Words in a Given String
From: "Michael Kay" <mike@xxxxxxxxxxxx>
Date: Fri, 14 Oct 2005 09:03:38 +0100
|
> <xsl:function name="f:replace-all">
> <xsl:param name="input" as="xs:string"/>
> <xsl:param name="words-to-replace" as="xs:string*"/>
> <xsl:param name="replacement" as="xs:string"/>
> <xsl:sequence select="if (exists($words-to-replace))
> then f:replace-all(replace($in, $words-to-replace,
> $replacement))
> else $input"/>
> </xsl:function>
>
I made the mistake of tidying the code just before posting it and messed it
up. What I meant to say was:
<xsl:function name="f:replace-all">
<xsl:param name="input" as="xs:string"/>
<xsl:param name="words-to-replace" as="xs:string*"/>
<xsl:param name="replacement" as="xs:string"/>
<xsl:sequence select="if (exists($words-to-replace))
then f:replace-all(replace($in, $words-to-replace[1],
$replacement),
remove($words-to-replace,1),
$replacement)
else $input"/>
</xsl:function>
Michael Kay
http://www.saxonica.com
|