Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/362.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java XPath中XML子位置与文档位置_Java_Xml_Selenium_Xpath - Fatal编程技术网

Java XPath中XML子位置与文档位置

Java XPath中XML子位置与文档位置,java,xml,selenium,xpath,Java,Xml,Selenium,Xpath,我有这样的东西(在根目录中有更多的元素): 但是这种按位置查找节点的方法在以前似乎不适用于/。如何找到我的节点?请注意以下两者之间的区别: //b[1],它选择b元素同级中第一个b元素,因为[1]比///code>绑定得更紧密 (//b)[1],它在所有b元素中选择第一个b元素 在文件中 因此,如果您想要文档中的ithb元素,请使用 findElement(By.xpath("(//b)[" + i + "]")); 当然,您可以通过在b步骤前面加上层次结构中较高的其他步骤,将范围限制在文

我有这样的东西(在
根目录中有更多的元素):


但是这种按位置查找节点的方法在以前似乎不适用于
/
。如何找到我的节点?

请注意以下两者之间的区别:

  • //b[1]
    ,它选择
    b
    元素同级中第一个
    b
    元素,因为
    [1]
    ///code>绑定得更紧密
  • (//b)[1]
    ,它在所有
    b
    元素中选择第一个
    b
    元素 在文件中
因此,如果您想要文档中的
i
th
b
元素,请使用

findElement(By.xpath("(//b)[" + i + "]"));
当然,您可以通过在
b
步骤前面加上层次结构中较高的其他步骤,将范围限制在文档的某些部分

findElement(By.xpath("root//b[" + i + "]"));
findElement(By.xpath("(//b)[" + i + "]"));