使用XPATH在*包含特定文本的行之后选择行*

时间:2014-06-20 15:06:31

标签: xpath

如果可能或不可能,我无法解决,我有一个基本表,但该表中有不同数量的行和数据。

假设表只有一列宽且随机行数很长,以选择包含文本“COW”的行,我可以做一些非常简单的事情: -

table/tbody/tr[contains(td[1],"COW")]/td[1]

但是我们可以说这个表中包含两种类型的数据,一个动物列表,每个动物下面都有一个属性列表,所有这些都在同一列中,看起来像这样: -

COW
Horns = 2
Hooves = 4
Tail = 1
CHICKEN
Horns = 0
Hooves = 0
Tail = 1

有没有办法使用XPATH首先识别包含文本COW的行,然后在此之后直接选择行以返回文本“Horns = 2”?

干杯

1 个答案:

答案 0 :(得分:3)

似乎你想要这样的东西:

table/tbody/tr[contains(td[1],"COW")]/following-sibling::tr[1]/td[1]

这将选择紧接包含td的行的行中的第一个td,其中包含COW