我是 XPath 新手,我有一个问题:如何按特定名称在所有分支中搜索子项并在 XML 文件中显示信息?
<?xml version="1.0" encoding="UTF-8"?>
<movie><?xml version="1.0" encoding="UTF-8"?>
<movie>
<film>
<name>Peaceful Warrior</name>
<actor>Scott Mechlowicz</actor>
</film>
<film>
<name>Gone</name>
<actor>Scott Mechlowicz</actor>
</film>
<film>
<name>Gladiator</name>
<actor>Russel Crowe</actor>
</film>
</movie>
我尝试过:
//*[ancestor::movie/film[name = "Scott Mechlowicz"]]
但这显示了所有信息,而我的目的是仅显示该 Actor 参与的电影。
这可以通过 XPath 实现吗?还是必须使用 getNameByTagName
NodeList
?
最佳答案
您可以使用 XPath。如果您只是想获取电影名称列表,请尝试此 XPath(获取电影名称,其中 actor =“Scott Mechlowicz”)
//film[actor = "Scott Mechlowicz"]/name
或
/movie/film[actor = "Scott Mechlowicz"]/name
关于java - 通过子节点内容在XML中搜索子节点,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30628691/