xsl-list
[Top] [All Lists]

RE: How to Tag Several Words in a Given String

2005-10-13 21:03:43
I'm still trying solutions for this problem.

my source xml:

<String>YA Cahier de brouillon Tual S. Jean</String>

I tried this xsl:

<xsl:variable name="strMatches" as="xs:string*"
select="('YA', 'Tual', 'S. Jean')"/>

<xsl:template match="String">
<xsl:element name="{name(.)}">
<xsl:value-of select="for $i in (1 to
count($strMatches)) return
replace(text(),$strMatches[$i],'test')"/>
</xsl:element>
</xsl:template>

but it only gives me:

<String>test Cahier de brouillon Tual S. Jean YA
Cahier de brouillon test S. Jean YA Cahier de
brouillon Tual test</String>

as you can see i can only get to change each string in
$strMatches per iteration but i want to output only
one single string.

desired output is:

<String>test Cahier de brouillon test test</String>

am i close to solving this problem or am i way far
out???

-- UlyLee
--- UlyLee <ulyleeka(_at_)yahoo(_dot_)com> wrote:

I actually had an idea on how to go around with this
but i dont how to properly code it in XSLT.

<String>Name1 and Name3 also Name4 Name5 but not
Name2</String>

<table>
<tr>
<td>Name1</td>
<td>ValidName1</td>
</tr>
<tr>
<td>Name3</td>
<td>ValidName3</td>
</tr>
<tr>
<td>Name4 Name5</td>
<td>ValidName4 ValidName5</td>
</tr>
</table>

* i'll assign first into a variable, validStr, all
the
td[1] in table
* test if contents of String is equal to $validStr
* if true then i'll assign to a variable, match, the
sibling of the td[1] that matches $validStr[1]
* then call replace(String, $validStr[1], $match)
* then run this all over again but this time passing
the replaced string as new string to process and
remove the $validStr[1] in $validStr to avoid
repetition.

output should be:

<String><ValidName>ValidName1</ValidName> and
<ValidName>ValidName3</ValidName> also
<ValidName>ValidName4 ValidName5</ValidName> but not
Name2</String>

i hope that makes sense :D

-- UlyLee


              
__________________________________ 
Start your day with Yahoo! - Make it your home page!

http://www.yahoo.com/r/hs


--~------------------------------------------------------------------
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>
--~--





        
                
__________________________________ 
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>
--~--