我有简单的xpath
/products/product[contains(categorie,'Kinderwagens')]
Run Code Online (Sandbox Code Playgroud)
它有效,但现在如何过滤多个类别值
喜欢
/products/product[contains(categorie,'Kinderwagens')] +
/products/product[contains(categorie,'Kinderwagens')]
Run Code Online (Sandbox Code Playgroud)
Cur*_*ous 44
这会有用吗?
/products/product[contains(categorie,'Kinderwagens') or contains(categorie,'Wonderwagens')]
Run Code Online (Sandbox Code Playgroud)
还有一个类似的问题在这里
Mic*_*Kay 12
你真的想要contains()吗?通常,人们使用contains()来测试节点是否应该在使用"="时包含值.不同之处在于,如果类别元素的字符串值为"Kinderwagens",categorie = 'wagens'则为false,但contains(categorie, 'wagens')为真.
如果你真的打算'=',那么在XPath 2.0中你可以写[categorie = ('Kinderwagens', 'Wonderwagens')].如果您仍在使用XPath 1.0,则需要使用'或'进行两次单独的比较.
有很多方法:
//*[contains(text(), 'Kinderwagens') or contains(text(), 'Kinderwagens')]//product[contains(text(), 'Kinderwagens') or contains(text(), 'Kinderwagens')]//products/product[contains(text(), 'Kinderwagens') or contains(text(), 'Kinderwagens')]//products/product[contains(categorie, 'Kinderwagens') or contains(categorie, 'Kinderwagens')]注:| 不使用(按位或)运算符