xsl-list
[Top] [All Lists]

Re: Replacing strings in XSL

2005-03-18 15:25:35
That clears up the issue. I thought you might have a structure like 
<element>      </element>, which would be a different problem.

The following solutions work against this midget XML structure:

<x>
  <y>one two three</y>
</x>

One way to do what you want to do in XSLT 1.0 is this:
  <xsl:template match="y">
    <y>
      <xsl:call-template name="replaceSpace">
        <xsl:with-param name="inString" select="."/>
      </xsl:call-template>
    </y>
  </xsl:template>
 
  <xsl:template name="replaceSpace">
    <xsl:param name="inString"/>
    <xsl:choose>
      <xsl:when test="contains($inString, ' ')">
        <xsl:value-of select="substring-before($inString, ' ')"/>&#160;
        <xsl:call-template name="replaceSpace">
          <xsl:with-param name="inString" 
select="substring-after($inString, ' ')"/>
        </xsl:call-template>
      </xsl:when>
      <xsl:otherwise>
        <xsl:value-of select="$inString"/>
      </xsl:otherwise>
    </xsl:choose>
  </xsl:template>

One way to do it in XSL 2.0 is this:
  <xsl:template match="y">
    <y><xsl:value-of select="replace(., ' ', '&#160;')"/></y>
  </xsl:template>

(Thanks to Dr. Kay for pointing out the replace function earlier today.)

Jay Bryant
Bryant Communication Services
(presently consulting at Synergistic Solution Technologies)




preetig_2 <preetig_2(_at_)yahoo(_dot_)com> 
03/18/2005 04:05 PM
Please respond to
xsl-list(_at_)lists(_dot_)mulberrytech(_dot_)com


To
xsl-list(_at_)lists(_dot_)mulberrytech(_dot_)com
cc

Subject
Re: [xsl] Replacing strings in XSL






Hi Jay,

My XML has a tag somewhat like this,

<MANUFACTURER>LG Electronics Inc</MANUFACTURER> 

The XSL has to replace the white spaces with &nbsp;
For e.g: LG&nbsp;Electronics&nbsp;Inc

Hope that helps, please let me know if you have nay
questions.

Thanks,
Preeti 


I'm sure it is, but exactly how you'd want to go
about it is likely to 
depend on the details of what you are trying to do.
How about sending us 
snippets (small but complete enough to show the
problem) of your XML 
source, your stylesheet so far, and your desired
output. It's pretty hard 
to answer questions in a vacuum (at least for me).

Jay Bryant
Bryant Communicaton Services
(presently consulting at Synergistic Solution
Technologies)




preetig_2 <preetig_2(_at_)yahoo(_dot_)com> 
03/18/2005 03:07 PM
Please respond to
xsl-list(_at_)lists(_dot_)mulberrytech(_dot_)com


To
xsl-list(_at_)lists(_dot_)mulberrytech(_dot_)com
cc

Subject
[xsl] Replacing strings in XSL






Hi ,

I am trying to replace white space with &nbsp; .
Please let me know if its doable in XSL.

Thanks,
Preeti




 
__________________________________ 
Do you Yahoo!? 
Yahoo! Small Business - Try our new resources site!
http://smallbusiness.yahoo.com/resources/ 

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