如果要比较并找到2个字符串中的较大字符,请提供以下新手问题 -
<xsl:variable name="String1" select="ABC"/>
<xsl:variable name="String2" select="DEF"/>
我对两个字符串之间的比较重点是基于第一个字母大于另一个字母,所以,我这样做了 -
<xsl:variable name="String1First" select="substring($String1,1,1)"/>
<xsl:variable name="String2First" select="substring($String2,1,1)"/>
所以我有string1First&amp;中第一个字母的值String2First for comparison。
现在实际比较是问题 - 只是试图检查string1&gt; string2但是这显然没有给我正确的结果。
<xsl:variable name="Output">
<xsl:choose>
<xsl:when test="'$String1First' > '$String2First'">
<xsl:text> First string is greater </xsl:text>
</xsl:when>
<xsl:otherwise>
<xsl:text> Second string is greater </xsl:text>
</xsl:otherwise>
</xsl:choose>
</xsl:variable>
尝试使用比较功能,但这似乎不起作用。
<xsl:variable name="Output">
<xsl:choose>
<xsl:when test="(compare('$String1First', '$String2First')) = 1">
<xsl:text> First string is greater </xsl:text>
</xsl:when>
<xsl:otherwise>
<xsl:text> Second string is greater </xsl:text>
</xsl:otherwise>
</xsl:choose>
</xsl:variable>
也尝试过:
<xsl:variable name="Alphabet" select="ABCDEFGHIJKLMNOPQRSTUVWXYZ"/>
<xsl:number name="PosNo" select="index-of-string($Alphabet,$String1First)">
<xsl:number name="PosNo2" select="index-of-string($Alphabet,$String2First)">
通过获取位置来比较数字,但是整个格式错误。
请您帮忙解决最简单的方法吗?
非常感谢您的帮助。