2016-01-07 83 views
1

我的XML結構的所有元素:用下面的兄弟等於它

<root> 
    <!-- First --> 
    <A> 
     <B>123</B> 
     <C>456</C> 
    </A> 

    <!-- Second --> 
    <A> 
     <B>999</B> 
     <C>456</C> 
    </A> 

    <!-- Third --> 
    <A> 
     <B>123</B> 
     <C>456</C> 
    </A> 

    <!-- Fourth--> 
    <A> 
     <B>123</B> 
     <C>999</C> 
    </A> 

    <!-- Fifth --> 
    <A> 
     <X>123</X> 
     <Y>456</Y> 
    </A> 
</root> 

我想找到所有誰下的兄弟姐妹這等於它的元素。

期望的結果只是第一個元素,因爲它等於第三個元素。

我已經試過這樣:

//A[.= following-sibling::A] 

但作爲結果,我得到的第一個和第三個元素。我想第三個元素匹配第五個元素,因爲=運算符只是比較字符串值,對吧?你可以幫我嗎?

我甚至可以計算XPath中匹配元素的位置,還是必須在XSL for循環中搜索它?

+0

'// A [某些$兄弟在跟隨 - 兄弟:: A滿足深等於(。,$兄弟)]'表達你需要什麼? –

回答