配置单元xpath获取特定类型元素的数组

2mbi3lxu  于 2021-06-26  发布在  Hive
关注(0)|答案(2)|浏览(513)

我有一个xml

<d><a><c>1</c><b>2</b><b>3</b></a></d>

我想返回一个数组 <b> ```
[2,3]

没有 `<c>` . 我试过这样

select xpath('123', "//[local-name()='a']//text()");

但是我得到了

[1,2,3]

我以为 `//*[local-name()='a']/b` 将工作,但它返回一个空数组。我怎样才能得到我想要的结果?
ru9i0ody

ru9i0ody1#

select xpath('<d><a><c>1</c><b>2</b><b>3</b></a></d>', "//*[local-name()='a']/*[local-name()='b']/text()");

编辑
这同样有效

"//*[local-name()='b']/text()"
ndasle7k

ndasle7k2#

简单易行:

//b/text()

我测试了一下,效果很好。

相关问题