2012-10-01 88 views
1

只需很少的幫助。請讓我知道這個通過xpath選擇除了幾個節點以外的所有節點

正確的XPath表達式我有XML文檔這樣

<parent> 
        <child id='1' show='true' /> 
        <child id='2' show='true' /> 
        <child id='3' show='true' /> 
        <child id='4' show='true' /> 
        <child id='5' show='true' /> 
        <child id='6' show='true' /> 
       </parent> 

我要選擇除了第2個和第5個孩子的所有show屬性,這樣我可以把自己的價值觀false

+0

我會說智能表達式 – Jayy

回答

1

您可以在XPath表達式使用布爾and

/parent/child[@id != '2' and @id != '5'] 

如果你真的想第二和第五元素,你可以使用position()功能:

/parent/child[position() != 2 and position() != 5] 
1

使用

/*/*[not(position() = 2 or position() = 5)]/@show 

這將選擇XML文檔的頂級元素的所有子項的任何show屬性,ISN是其父母的第二個或第五個孩子。