gpt4 book ai didi

java - xpath 表达式检查属性值失败

转载 作者:行者123 更新时间:2023-12-02 07:52:06 26 4
gpt4 key购买 nike

我需要获取group标签中的每个operator_id标签属性@name,其中@title属性等于一些字符串,下面的示例无法做到这一点:

List list = doc.selectNodes("//root//menu//group[@title=" + menuTitle + "]//operator_id//@name");

XML 结构:

  <group id="980" title="Переводы" image="" sh_n="1" enable="1" visible="0" image_bg="" type="">
<operator_id id="10000047" name="Перевод физ лицу" image="individual.png" sh_n="1" enable="1" visible="1" />
<operator_id id="10000048" name="Перевод юр лицу" image="organizations.png" sh_n="1" enable="1" visible="1" />
<operator_id id="10000078" name="Перевод внутри банка" image="innerbank.png" sh_n="1" enable="1" visible="1" />
<operator_id id="10000049" name="Налоговый платеж" image="taxes1.png" sh_n="1" enable="1" visible="1" />
</group>

我做错了什么?

最佳答案

无论如何,我都不是 XPath 专家,但我认为您不想在整个查询中使用双斜杠。您尝试过吗:

List list = doc.selectNodes(
"//root/menu/group[@title=" + menuTitle + "]/operator_id/@name");

?即使开头的 // 也可以只是 /(如果它确实是根元素)。

此外,我怀疑您应该为该值添加引号,例如

List list = doc.selectNodes(
"//root/menu/group[@title='" + menuTitle + "']/operator_id/@name");

List list = doc.selectNodes(
"//root/menu/group[@title=\"" + menuTitle + "\"]/operator_id/@name");

这些更像是 XPath 规范中的示例。

关于java - xpath 表达式检查属性值失败,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10122811/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com