如何在Xpath中使用following来获取标签中的兄弟姐妹

时间:2018-10-16 15:47:26

标签: xpath

我具有以下结构:我正在尝试构建一种健壮的方法,以按出现的顺序提取FT1_19标签的FT1_19_0的元素。然而 在我的结果中,元素进行了重新排列。我如何以正确的顺序获取结果。

 //*/FT1_19/FT1_19_0[contains(../FT1_19_2,'I10') and 
 not(.=../following::FT1_19/FT1_19_0)]
The Result(Rearranged)
X50.0XXA
M76.891
M17.11
M23.303

<?xml version="1.0" encoding="UTF-8"?>

<root>
<FT1>
<FT1_1>1</FT1_1>
<FT1_4>20180920130000</FT1_4>
<FT1_5>20180924110101</FT1_5>
<FT1_6>CG</FT1_6>
<FT1_7>99203</FT1_7>
<FT1_9/>
<FT1_10>1.00</FT1_10>
<FT1_13>NPI</FT1_13>
<FT1_16>
  <FT1_16_1>Gavin, Matthew, MD</FT1_16_1>
  <FT1_16_3>22</FT1_16_3>
</FT1_16>
<FT1_19 NO="1">
  <FT1_19_0>M76.891</FT1_19_0>
  <FT1_19_2>I10</FT1_19_2>
</FT1_19>
<FT1_19 NO="2">
  <FT1_19_0>M17.11</FT1_19_0>
  <FT1_19_2>I10</FT1_19_2>
</FT1_19>
<FT1_19 NO="3">
  <FT1_19_0>M23.303</FT1_19_0>
  <FT1_19_2>I10</FT1_19_2>
</FT1_19>
<FT1_19 NO="4">
  <FT1_19_0>X50.0XXA</FT1_19_0>
  <FT1_19_2>I10</FT1_19_2>
</FT1_19>
</FT1>
</root>

1 个答案:

答案 0 :(得分:0)

如果使用的是Java,请使用此选项:

List<WebElement> list = driver.findElements(By.xpath("//ft1_19//following::ft1_19_0"));     
for(WebElement we:list) {
            System.out.println(we.getText());
        }