【发布时间】:2012-05-11 07:18:06
【问题描述】:
所以我在我的大学被分配“修复”XPath 并让它以正确的顺序返回节点。
我一直在尝试找到一种方法来绕过编写很长的代码并将每个表达式分解为小和平,然后将它们重新组合在一起。
我想到了一些想法,但我需要帮助来实现它们:)
在 XPath jar 中找到对节点进行排序并删除它的方法 - 问题是我不知道它是否可以看到 XPath jar 代码,并且没有在网上找到它。 - 如果你能指出我的话,那就太好了!
我发现这个选项看起来应该可以解决问题 http://cafeconleche.org/books/xmljava/chapters/ch16s06.html
但它需要 XPath 3.0 的 dom 实现 而且我在任何地方都找不到那个 dom - 知道是否有这样的事情吗?如果您有任何其他想法,我很想听听!
例如:对于这个xml
<library>
<book name="book1">
hello
</book>
<book name="book2">
world
</book>
<book name="book3">
!!!
</book>
</library>
还有这个表达式:/library/book[3]/preceding-sibling::book 我得到了
书1 书2
安装:
书2 书1
我可以使用任何东西,只要我在 java 程序中使用它就可以了
感谢您的所有帮助:)
【问题讨论】:
-
点了,所有的改变。 :)
-
什么是正确的顺序?如果你的意思是排序,你能use XSLT吗?
-
添加了一个例子。我可以使用任何东西,只要我在我不理解的 java 代码中编写它,XSLT 有什么帮助?
-
XSLT 可以生成一个文档,其中的节点按您希望的任何顺序排序。但据我所知,你总是想要相反的顺序?
-
我需要根据我评估的表达式的顺序,我的输入是一个 xml 文件-我不知道文件的结构,我无法将其更改为 XSLT。