2012-03-06 104 views

回答

1

應該是同出一轍:

count(a/b[@val='tsr']/preceding-sibling::*)+1 

用法示例...

XSLT 1.0

<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform"> 

    <xsl:template match="/"> 
    <xsl:value-of select="count(a/b[@val='tsr']/preceding-sibling::*)+1"/> 
    </xsl:template> 

</xsl:stylesheet> 

輸出:

3 
+0

你測試你的解決方案?當我逐字複製你的解決方案並運行它對我的測試文件時,我得到的輸出爲1. 我嘗試了類似於發佈此問題之前發佈的內容,但仍得到1而不是3 – rokeefe1 2012-03-09 17:05:47

+0

@ user1252899 - 是的,我做了。我測試了Xalan,Saxon 6.5.5,Saxon 9.3(HE,PE和EE)和AltovaXML,並且都給了我「3」的結果。您的測試文件是否與問題中發佈的XML完全相同?你在用什麼處理器? – 2012-03-09 18:05:53

+0

問題出在我的XML文件中。謝謝你的幫助! – rokeefe1 2012-03-19 14:27:55

相關問題