В данном XML-файле я пытаюсь найти наличие строки с использованием XPath
в Java. Однако, несмотря на то, что строка есть, мой вывод всегда появляется как Нет. Надеюсь, кто-то здесь может указать, что я могу делать неправильно?Поиск значения элемента в файле XML
XML файла:
<article>
<body>
<section>
<h1>intro1</h1>
<region>introd1</region>
<region>introd2</region>
</section>
<section>
<h1 class="pass">1 task objectives</h1>
<region>object1</region>
<region>object2</region>
</section>
<section>
<h1 class="pass">1 task objectives</h1>
<region>object1</region>
<region>This is the Perfect Word I am looking for</region>
</section>
</body>
</article>
В Java я пытаюсь проверить на наличие слова "perfect"
как это:
expr = xpath.compile("//article//body//section//region[contains(.,'perfect')]");
object result = expr.evaluate(doc,XPathConstants.NODESET);
NodeList nodes = (NodeList)result;
if (nodes.getLength() > 0) {
System.out.println("Found");
// do other stuff here
} else {
System.out.println("Not found");
}
Когда я запускаю это, выход всегда "Not Found"
. Любая идея, что я делаю неправильно?
Пробовал, что с помощью точного соответствия, а также. Я все еще получаю сообщение «Не найдено». – BRZ