XSLT how to sort by variable derived from original field?

ericchestnut

New Member
I'm very new to xslt, and wondering how to do a sort based on a derived variable such as the following (using xslt 1.0):xml:\[code\]<channel> <item> <title>#2: Second Guy</title> </item> <item> <title>#3: Third Guy</title> </item> <item> <title>#1: First Guy</title> </item></channel>\[/code\]xslt attempt:\[code\]<xsl:for-each select="channel/item" > <xsl:sort select="$rank" data-type="number" order="ascending" /> <xsl:variable name="rankStartPosn" select="string-length(substring-before(title, '#'))+1"/> <xsl:variable name="rankEndPosn" select="string-length(substring-before(title, ':'))+1"/> <xsl:variable name="rank" select="substring(title,number($rankStartPosn), number($rankEndPosn)-number($rankStartPosn))"/> <p class="Normal"> <xsl:value-of select="title" /> </p> </xsl:if> </xsl:if> </xsl:for-each>\[/code\]Desired output:\[code\]#1: First Guy#2: Second Guy#3: Third Guy\[/code\]Thanks in advance for any help!Chad
 
Back
Top