我需要一个方法可以返回指定xpath中指定属性的值。因此,例如,如果我们有xpath = /root/foo/body/part[5]/test[3]
并且我们想要xpath的id
标记内的属性test[3]
的值,那么我需要能够调用看起来像这样的方法:
public String getAttributeValue(String xpath, String attribute) {
String attributeValue = "xpath/attribute".value();
return attributeValue;
}
答案 0 :(得分:3)
您可以尝试使用@
命令
//xpath[@attribute]
请注意,您也可以使用@
//xpath[@attribute='filtervalue']
答案 1 :(得分:1)
想出来......
public String retrieveAttributeValue(Document document, String xpath, String attribute) throws IOException, ParserConfigurationException, SAXException, XPathExpressionException {
XPath xPath = XPathFactory.newInstance().newXPath();
XPathExpression xPathExpression = xPath.compile(xpath + "/" + attribute);
String attributeValue = "" + xPathExpression.evaluate(document, XPathConstants.STRING);
return attributeValue;
}