繁体   English   中英

java xpath如何获取特定节点的所有数据

[英]java xpath how to get all data different of specific node

我想让所有节点都与节点车不同。

XPath xpath = XPathFactory.newInstance().newXPath();
        NodeList nodes = (NodeList) xpath.evaluate("//car", document, XPathConstants.NODESET);

如何设置类似的东西:

NodeList nodes = (NodeList) xpath.evaluate(!"//car", document, XPathConstants.NODESET);

XPath字符串前添加感叹号不起作用。 实际上,对于 Java, XPath表达式只是一个String :它的内容不会由 Java 本身解释,而是由您使用的XPath库解释。

因此,这里的唯一解决方案是修改XPath内部表达String

你可以这样做:

NodeList nodes = (NodeList) xpath.evaluate("//*[name() != 'car']", document, XPathConstants.NODESET);

解释: //*[name() != 'car'意思是:查找文档中名字不是'car'所有节点

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM