2008-11-20 74 views
8

我在構造單個XPath語句以返回兩組不同屬性時遇到了問題。如何使用XPath在XML文檔中選擇多組屬性?

例如以下面的XML文檔:

<root> 
<line name="one" alpha="a1" beta="b1"/> 
<line name="two" alpha="a2" beta="b2"/> 
<line name="three" alpha="a3" beta="b3"/> 
</root> 

如果我用下面的XPath語句:

//@alpha 

它產生以下屬性設置:

alpha="a1" 
alpha="a2" 
alpha="a3" 

什麼聲明我用來產生以下屬性集:

alpha="a1" 
alpha="a2" 
alpha="a3" 
beta="b1" 
beta="b2" 
beta="b3" 

回答

13

通過XPath表達式中使用|操作符,你可以選擇幾個路徑:

//@alpha | //@beta 
11
//@*[name()='alpha' or name()='beta']