xsl-list
[Top] [All Lists]

Re: Replacing strings

2005-11-24 01:48:36
Then only convert the string to lowercase for testing if it contains the
searchstring.

Okay, but you need the translated string because substring needs a "end
point".

<xsl:when test="contains($string, $from)">
        Let's assume that string is just converted to lowercase to test

<xsl:value-of select="substring-before($string, $from)" />
        Here you need lowered case string again.

Hmm, true. Awckward but not undoable:

<xsl:when test="contains($lowercasestring, $from)">
  <xsl:variable name="startpos" 
select="string-length(substring-before($lowercasestring, $from))" />
  <xsl:variable name="endpos" select="$startpos + string-length($from)" />

  <xsl:value-of select="substring($string, 1, $startpos - 1)" />
  <!-- insert replacement -->
  <!-- continue loop with substring($string, $endpos) -->
</xsl:when>

Combine this with the lookup and you have a nice replace function..

Regards,
Geert

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



<Prev in Thread] Current Thread [Next in Thread>