xpath 处理自增的id manage11 使用表达式 //*[starts-with(@id, "manage") and number(substring-after(@id, "manage")) >11]

 背景知识1

选择满足多个条件的元素节点:
//标签名[条件1 and 条件2]
//div[@class="example" and @id="demo"]:
选择所有具有class属性值为example且id属性值为demo的div元素节点。

背景知识2

如果要选择以特定字符串结尾的id属性的元素节点,可以使用ends-with函数。以下是一个示例:

//*[starts-with(@id, "manage") and ends-with(@id, "11")]

背景知识3

substring-after函数的作用是在@id属性值中找到第一个出现的"manage",然后返回该字符串之后的部分。
例如,如果@id的值是"manage11",那么substring-after(@id, "manage")将返回"11"

 

 //*[starts-with(@id, "manage") and number(substring-after(@id, "manage")) = 11]

 因为是id自增的所以大部分需要改为大于

 //*[starts-with(@id, "manage") and number(substring-after(@id, "manage")) > 11]

1.使用starts-with()函数选择以"manage"开头的所有元素,

2.使用substring-after()函数获取ID中"manage"后面的部分。

3.使用number()函数将这部分转换为数字,

4.使用逻辑运算符and来判断id是否以manage开头,manage之后的数字是否大于11。

 

posted @ 2023-10-07 15:11  胖豆芽  阅读(19)  评论(0编辑  收藏  举报