Please try this 1.0 stylesheet:
<?xml version="1.0" encoding="UTF-8"?>
<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
version="1.0">
<xsl:output method="text" />
<xsl:template match="/links">
<xsl:for-each select="link">
<xsl:variable name="result">
<xsl:call-template name="getImageName">
<xsl:with-param name="imgPath" select="." />
</xsl:call-template>
</xsl:variable>
<xsl:value-of select="$result" /><xsl:text>
</xsl:text>
</xsl:for-each>
</xsl:template>
<xsl:template name="getImageName">
<xsl:param name="imgPath" />
<xsl:choose>
<xsl:when test="contains($imgPath, '/')">
<xsl:call-template name="getImageName">
<xsl:with-param name="imgPath"
select="substring-after($imgPath, '/')" />
</xsl:call-template>
</xsl:when>
<xsl:otherwise>
<xsl:value-of select="$imgPath" />
</xsl:otherwise>
</xsl:choose>
</xsl:template>
</xsl:stylesheet>
The input XML is:
<links>
<link>root/statics/images/image.jpg</link>
<link>root/images2/image2.jpg</link>
</links>
The output produced by the transform is:
image.jpg
image2.jpg
The logic here mirrors Mike's idea.
On Nov 14, 2007 1:25 PM, Vaduvoiu Tiberiu <vaduvoiutibi(_at_)yahoo(_dot_)com>
wrote:
Hi, I have a little wierd problem. i have an xml where I have a bunch of
image links like:
root/statics/images/image.jpg
root/images2/image2.jpg
is there a way to extract the names of the images using xslt 1.0? I need to
extract the names of the images...image.jpg, image2.jp, etc. I thought about
using substring but there are more than a slash in the path. Basically I
would need the string from the last slash to the end. Sounds a little
complicated but is there a way around it? 10x
--
Regards,
Mukul Gandhi
--~------------------------------------------------------------------
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>
--~--