例如,如果我有以下xml
<root>
<actors>
<actor id="1">Christian Bale</actor>
<actor id="2">Liam Neeson</actor>
<actor id="3">Michael Caine</actor>
<actor id="4">Sylvester Stallone</actor>
</actors>
</root>
以及一个值为(1,2,4)的过滤器列表。我该如何编写XPath查询来选择所有id都在过滤器列表中的actor?
我正在寻找一种将属性值与列表进行匹配的方法。我知道您可以通过例如//root/actors/actor[@id<3]
来给我所有id值小于3的演员,或者//root/actors/actor[@id=1 or @id=3]
来给id为1或3的演员。但是随着时间的流逝,它很快就会失去控制列表。是否有运算符可与值列表进行比较?
答案 0 :(得分:1)
如果您使用的是XPath 2.0,则可以使用
/root/actors/actor[@id=(1, 2, 4)]