是的,您正处于XPath的正确轨道 - 它非常适合选择XML文档的各个部分。
例如,对于这个XML,
<r>
<h2>Title A</h2>
<div>Some Content</div>
<div>More Content</div>
<h2>Title B</h2>
</r>
这个XPath,
//div[preceding-sibling::h2 = 'Title A' and following-sibling::h2 = 'Title B']
将选择这个内容,
<div>Some Content</div>
<div>More Content</div>
两个h2
冠军之间,按要求。
更新,以解决OP的自我回答:
对于这个新的XML例子,
<div>
<h2><span>Summary</span></h2>
<p>Paragraph</p>
<ul>
<li>List1</li>
<li>List2</li>
<li>List3</li>
</ul>
<p>Paragraph</p>
<h2><span>Location</span></h2>
<p>Paragraph</p>
</div>
我上面提供的XPath的可以很容易地适应,
//*[preceding-sibling::h2 = 'Summary' and following-sibling::h2 = 'Location']
选择此XML,
<p>Paragraph</p>
<ul>
<li>List1</li>
<li>List2</li>
<li>List3</li>
</ul>
<p>Paragraph</p>
根据要求。
这是正是我正在寻找的!谢谢:-)在我回家测试后,我会标记为正确答案。 – SeverinDK
我在自己的答案中添加了正确的答案。尽管你的回答确实指引着我朝着正确的方向前进! – SeverinDK
不客气。如果有帮助,请[**接受**](http://meta.stackoverflow.com/q/5234/234215)这个答案。谢谢。 (不知道你的意思是什么*我添加了我自己的答案正确的答案*,除非你的意思是你必须作出调整 - 我没有看到另一个SO答案在这里发布到你这个问题。) – kjhughes