У меня есть строка дат, разделенных запятой (,) Это выглядит как "20180116,20180115,20180126"
Мне нужно получить самую маленькую дату и самую большую дату из этой строки.Использование xslt 2.0
Код XSLT выглядит следующим образом:
<xsl:variable name="allDates"><xsl:value-of select="20180116,20180115,20180126"/> </xsl:variable>
<xsl:function name="getLicencingWindowStart">
<xsl:param name="dates" />
<xsl:variable name="smallestDateSort" select="tokenize(normalize-space($dates),',')" />
<xsl:for-each select="$smallestDateSort">
<xsl:sort select="." order="descending"/>
<xsl:if test="position() = last()">
<xsl:value-of select="."/>
</xsl:if>
<xsl:if test="position() = 1">
<xsl:value-of select="."/>
</xsl:if>
</xsl:for-each>
</xsl:function>
o / p:
Ожидаемый результат:
Наименьшее значение: "20180115"
самый большой: "20180126"
o / p:
<App_Data App="VOD" Name="smallestDate" Value=""/>
<App_Data App="VOD" Name="largestdate" Value="20180126"/>