2013-02-28 102 views
1
<Scheduled> 
<xsl:value-of select="//RequestParameters/Identifier/DepartureDate"> 
</xsl:value-of> 
</Scheduled> 

在這個xslt代碼中,iam在「// RequestParameters/Identifier/DepartureDate」中獲得最後一個字符'z',我想刪除z並請幫忙。如何使用xslt從字符串中刪除字符?

回答

3

如果//RequestParameters/Identifier/DepartureDate的值僅在末尾包含'z',則可以使用substring-before函數。

<xsl:value-of select="substring-before(//RequestParameters/Identifier/DepartureDate, 'z')"> 

編輯:

如果你想要得到的值的前10個字符,你可以使用substring功能。

<xsl:value-of select="substring(//RequestParameters/Identifier/DepartureDate, 1, 10)"> 
+0

感謝snak。這裏DepartureDate的類型日期爲例如值爲2011-10-16T09:40:00.000Z,但我需要輸出(保存)只有10個字符,即2011-10-16。請你幫忙嗎? – 2013-02-28 06:14:58

+0

您可以使用子字符串函數。更新了答案。 – snak 2013-02-28 06:42:50

0

一般情況下,你可能希望通過添加JavaScript函數的XSLT來在ISO 8601的日期格式的元素值轉換爲另一種格式,並調用您的XPath表達式功能。 例如,當已經將一個(JavaScript的)函數convertToDate,其提取輸入值的日期部分的格式yyyymmdd,XPath表達式

convertToDate (//RequestParameters/Identifier/DepartureDate) 

將導致一個值

20111016 

假設輸入中只有一個DepartureDate元素,其值爲

2011-10-16T09:40:00.000Z 
+0

如何在xslt中包含javascript:http://stackoverflow.com/q/7444317/62662 – 2013-02-28 07:52:48