1

我正在尝试使用 pentaho 水壶从 xml 中提取一些数据。

我想提取每个表中的所有 tr 节点,以便可以将它们与分隔符 '/' 连接起来

<entry>    
<table>
   <tr> item1 </tr>
   <tr> item2 </tr>
   <tr> item3 </tr>
   <tr> item4 </tr>
</table>   
</entry>
<entry>    
<table>
   <tr> item1 </tr>
   <tr> item2 </tr>
   <tr> item3 </tr>
   <tr> item4 </tr>
</table>   
</entry>

结果会像

fieldname
item1/item2/item3/item4
item5/item6/item7/item8

有没有办法在从 XML 中获取数据中使用 XPath 来做到这一点

现在我使用这个 Loop Xpath 从 Xpath 获取数据

/*[name()='entry'][1]/*[name()='table']/*[name()='tr']

使用 javascript 连接结果,将它们放在 excel 输出中,然后重复这些步骤直到进入 [20]。但稍后我将不得不将页面查询从 1 增加到 20,因此这种方法无法扩展......

如果有人可以帮助我,我将不胜感激!

提前致谢!

4

1 回答 1

2

您将哪个版本用于 xpath 2.0 这将起作用

string-join(//table[1]/tr/text(),"/")

string-join(//table[2]/tr/text(),"/")

于 2013-11-04T07:37:14.540 回答