如何使用xpath验证多个值或存储值

时间:2013-03-05 06:43:33

标签: xpath

我的xpath表达式如下:

//ep:getSwitchListResponse[1]/result[1]/item[position() >1 and position() <= last()]/ipAddress[1]/text()

我想获取position()的值并使用它来验证名称。

之类的东西
//ep:getSwitchListResponse[1]/result[1]/**item[Position()FromPreviousQuery**)]/name[1]/text() 

这可以在一个xpath表达式中同时执行吗?

1 个答案:

答案 0 :(得分:0)

除非您在本地某处存储第一个XPath的位置,否则如果要重用相同的位置,则必须再次调用xpath,XPath不存储先前遍历中的任何内容。

例)

你的第一个xpath:

//ep:getSwitchListResponse[1]/result[1]/item[position() >1 and position() <= last()]/ipAddress[1]/text()

它的位置:

count(//ep:getSwitchListResponse[1]/result[1]/item[position() >1 and position() <= last()]/ipAddress[1]/preceding-sibling::*)

位置XPath插入第二个:

//ep:getSwitchListResponse[1]/result[1]/**item[count(//ep:getSwitchListResponse[1]/result[1]/item[position() >1 and position() <= last()]/ipAddress[1]/preceding-sibling::*)]/name[1]/text()