Subject: [xsl] XSL - parsing a delimited string (URL) From: B Williams <bwilliam45@xxxxxxxxxxx> Date: Wed, 22 Dec 2010 12:24:26 -0600 |
I have an XML element that might might be empty or might contain: ;#http://www.blah.com/blah/blah2/blah.doc;# or: ;#http://www.blah.com/blah/blah3/blah.doc;#http://www.blah.com/blah/blah4/bla h.doc;# How do I tokenize the string so that I can get only that first occurrence? That is, only the first URL (if any) between the delimiters ... ? Also, if possible, I need the xsl function / template to spit out a 'default' URL if the source XML element is empty ... Believe I'm using XSL 1.0. I'm using Microsoft SharePoint Designer for SharePoint 2007. The beginning of the <xsl ...> is the following: <xsl:stylesheet xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/" xmlns:ddw1="http://schemas.microsoft.com/sharepoint/soap/" xmlns:rs="urn:schemas-microsoft-com:rowset" xmlns:z="#RowsetSchema" version="1.0" exclude-result-prefixes="xsl msxsl ddwrt" xmlns:ddwrt="http://schemas.microsoft.com/WebParts/v2/DataView/runtime" xmlns:asp="http://schemas.microsoft.com/ASPNET/20" xmlns:__designer="http://schemas.microsoft.com/WebParts/v2/DataView/designer" xmlns:xsl="http://www.w3.org/1999/XSL/Transform" xmlns:msxsl="urn:schemas-microsoft-com:xslt" xmlns:SharePoint="Microsoft.SharePoint.WebControls" xmlns:ddwrt2="urn:frontpage:internal"> I have the following, but it's not so great: <xsl:template name="SplitAttachments"> <xsl:param name="str"/> <xsl:choose> <xsl:when test="contains($str,';#')"> <xsl:variable name="attachmentUrl" select="substring-before($str,';#')"/> <xsl:if test="string-length($attachmentUrl) != 0"> <a href="{$attachmentUrl}"></a> </xsl:if> <xsl:call-template name="SplitAttachments"> <xsl:with-param name="str" select="substring-after($str,';#')" /> </xsl:call-template> </xsl:when> <xsl:otherwise> </xsl:otherwise> </xsl:choose> </xsl:template>
Current Thread |
---|
|
<- Previous | Index | Next -> |
---|---|---|
Re: [xsl] Declaring entities in out, David Carlisle | Thread | Re: [xsl] XSL - parsing a delimited, Michael Kay |
Re: [xsl] Novice Question - matchin, Wendell Piez | Date | Re: [xsl] XSL - parsing a delimited, Michael Kay |
Month |