- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我需要的似乎与其他类似标题的文章不太匹配。
我需要使用 Xpath 1 才能按顺序获得节点 a 或节点 b。
即如果存在则为节点a,否则为节点b。
一个 xpath 表达式,例如:expression | expression
如果它们都存在,我将得到它们。那不是我想要的。
我可以去:(expression | expression)[last()]
这实际上让我得到了我需要的东西(在我的情况下),但似乎有点低效,因为它会在选择最后一个结果之前评估表达式的两边。
我希望有一个表达式,一旦左侧成功,它就会停止工作。
一个更具体的 XML 示例
<one>
<two>
<three>hello</three>
<four>bye</four>
</two>
<blahfive>again</blahfive>
</one>
(/one/*[starts-with(local-name(.), 'blah')] | .)[last()]
最佳答案
I need, using Xpath 1, to be able to get node a, or node b, excusively, in that order. That is, node a if it exists, otherwise, node b.
an xpath expression such as :
expression | expression
will get me both in the case they both exist. that is not what I want.
I could go:
(expression | expression)[last()]
Which does in fact gget me what I need (in my case),
<one>
<a/>
<b/>
</one>
/*/a
/*/b
(Expression1 | Expression2)[last()]
(/*/a | /*/b)[last()]
b
-- 不是 a
-- 因为
b
按文档顺序是两者中的最后一个。
a
的表达式如果存在,并选择
b
仅当
a
不存在——无论文档顺序如何:
/*/a | /*/b[not(/*/a)]
a
, 无论其文档顺序如何——尝试在
a
位置上方交换 XML 文档和
b
确认在这两种情况下选择的元素都是
a
.
Expression1 | Expression2[not(Expression1)]
/one/*[starts-with(local-name(.), 'blah')]
self::node()
/one/*[starts-with(local-name(.), 'blah')]
|
self::node()[not(/one/*[starts-with(local-name(.), 'blah')])]
关于XPath 1.0 独占或节点集表达式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26063396/
当我在其中一个扬声器上打开独占模式音频流时,会发出奇怪的嗡嗡声。这种嗡嗡声不会在我的其他设备上的相同条件下发生,也不会在一般的独占推送模式或共享模式下发生。 问题似乎是 WASAPI 将周期设置为比我
我的一个类中有一个 double 值,并且有一个上限。 问题是当我尝试将此变量设置为大于其限制的值时。当发生这种情况时,我想将其设置为限制内最接近的值。 当我尝试时,尴尬的情况发生了 .getLimi
我有锁定每个函数(某个库的)的代码,我想对其进行优化。给定函数A和B ,我不介意A与任何其他同时运行 A ,或任何 B与任何其他同时运行 B ,但没有A可以在任何 B 时运行正在运行,反之亦然。线程计
当 XML 必须根据 http://www.w3.org/TR/xml-exc-c14n/ 规范化时,下面的 XML 片段应该相等吗?(注意,. 字符代表一个 ' ' 空格) . ..data .
我想限制对整个应用程序的访问 /*但对于某些 Servlet 则不然。它们应该是公开的。 有没有一种方法可以轻松做到这一点(我想象有一些排除或可能覆盖?)或者我是否必须将文件排列在子文件夹中并允许访问
在一个 spring-mvc 项目中,我对索引/主页的内容进行了测试: @RunWith(SpringRunner.class) @SpringBootTest @AutoConfigureMockM
完全依赖 ARKit 自动平面检测是我不想做的事情,因为它需要时间来检测表面,然后现实生活中的表面应该有足够的纹理,因此我需要考虑一些事情提供一个选项,如果我愿意,我应该能够通过点击按钮随意添加 an
我是一名优秀的程序员,十分优秀!