好的,这是我在前面提到的问题中遇到的问题。
How to form Xpath with irrelevant nodes in between two target nodes
以上是原始问题。 我希望能够从回答问题的人那里得到答案,但我不能这样,我会单独发布。
因为我担心,我的目标节点之间出现了更无关紧要的标签。让我假设我的目标标签和根之间可能有无限量的无关标签。我确信总是有目标/目标2和目标。
<body>
<target>
<annoying>
...
<x>
<goal>Text I want to obtain</goal>
</x>
...
</annoying>
</target>
<target2>
<noidea>
...
<y>
<goal>Second Target I want to obtain</goal>
</y>
...
</noidea>
</target2>
<body>
我希望可能会有以下内容:
//body/target/[*/]*goal
像正则表达式一样获得目标。 但是,确切地说,在Xpath之上并不是一个好的语法。
我还是要区分target和target2所以
//goal
不会回复我想要的结果。
是否有任何可以获得目标的Xpath?
答案 0 :(得分:1)
要获得所有目标,只需使用:
//goal
如果您有目标广告代码,请在必要时使用//
,因为在性能方面,“运算符”比/
差得多:
/body/target//goal
答案 1 :(得分:0)
//target//goal
和
//target2//goal
诀窍没有意识到我可以使用//而不是开始
答案 2 :(得分:0)
Xpath Axes就是你想要的
一个节点上的 descendant-or-self::goal
将选择所有具有目标名称的节点,从您所在的节点开始,并将所有节点嵌套在其中。