如何编写XPath查询以匹配两个属性?

时间:2010-01-05 21:35:55

标签: xpath

以下问题:

<div id="id-74385" class="guest clearfix" style="z-index: 999;">

如上所述,

如果我想要一个带有id和class检查的XPath表达式,我们可以做'和'条件LIKE:

//div[@id='id-74385'] and div[@class='guest clearfix']

这是正确的方法吗?我的执行失败了......请帮忙!

4 个答案:

答案 0 :(得分:167)

//div[@id='..' and @class='...]

应该做的伎俩。那就是选择具有所需值的两个属性的div运算符。

值得使用其中一个online XPath testbeds来尝试填充。

答案 1 :(得分:81)

//div[@id='id-74385'][@class='guest clearfix']

答案 2 :(得分:14)

添加Brian Agnew的答案。

您也可以执行//div[@id='..' or @class='...],并且可以在//div[@id='..' and (@class='a' or @class='b')]内添加带括号的表达式。

答案 3 :(得分:1)

示例XML:

<X>
<Y ATTRIB1=attrib1_value ATTRIB2=attrib2_value/>
</X>

string xPath="/" + X + "/" + Y +
"[@" + ATTRIB1 + "='" + attrib1_value + "']" +
"[@" + ATTRIB2 + "='" + attrib2_value + "']"

XPath Testbed: http://www.whitebeam.org/library/guide/TechNotes/xpathtestbed.rhtm