Will the strings always be whole words? If so, I would do
<xsl:analyze-string select="String" regex="\s+">
<xsl:non-matching-substring>
<xsl:choose>
<xsl:when test=". = $testStr">
<validName><xsl:value-of select="."/></validName>
</
<xsl:otherwise>
<xsl:value-of select="."/>
</
</
</
</
Michael Kay
http://www.saxonica.com/
-----Original Message-----
From: UlyLee [mailto:ulyleeka(_at_)yahoo(_dot_)com]
Sent: 12 October 2005 05:26
To: xsl-list(_at_)lists(_dot_)mulberrytech(_dot_)com
Subject: [xsl] How to Tag Several Words in a Given String
Hello,
I have this scenario, i have a string:
<String>Name1 and Name2 becomes Name3</String>
and have a set of valid strings that needs to tagged
which i assigned to a variable:
<xsl:varible name="testStr" as:"xs:string*"
select="('Name1', 'Name3')"/>
My desired output should be like this:
<String><validName>Name1</validName> and Name2 becomes
<validName>Name3</validName></String>
I was thinking of using a for-each loop to process the
matches, but i'm stuck into what procedures i need to
put in the for-loop:
<xsl:for-each select="$testStr">
<xsl:if test="contains(String,.)">
???
</xsl:if>
</xsl:for-each>
Am i going in the right direction here? or is there a
better way to do this?
-- UlyLee
__________________________________
Yahoo! Mail - PC Magazine Editors' Choice 2005
http://mail.yahoo.com
--~------------------------------------------------------------------
XSL-List info and archive: http://www.mulberrytech.com/xsl/xsl-list
To unsubscribe, go to: http://lists.mulberrytech.com/xsl-list/
or e-mail:
<mailto:xsl-list-unsubscribe(_at_)lists(_dot_)mulberrytech(_dot_)com>
--~--
--~------------------------------------------------------------------
XSL-List info and archive: http://www.mulberrytech.com/xsl/xsl-list
To unsubscribe, go to: http://lists.mulberrytech.com/xsl-list/
or e-mail: <mailto:xsl-list-unsubscribe(_at_)lists(_dot_)mulberrytech(_dot_)com>
--~--