从我的xml中,我可以得到这个:
<home>
<creditors>
<count>2</count>
</creditors>
</home>
或者甚至是这样:
<home>
<creditors>
<moreThan>2</moreThan>
</creditors>
</home>
我可以使用哪个xpath表达式获取"<count>2</count>"
而不是仅获取&#34; 2&#34;或者获取"<moreThan>2</moreThan>"
而不是获得&#34; 2&#34; ?
答案 0 :(得分:1)
这个XPath,
//creditors/count
将选择XML文档中所有count
元素的所有creditors
子元素。
在针对选择count
和moreThan
元素的单个XPath的评论中更新每个OP的请求:
这个XPath,
//creditors/*[self::count or self::moreThan]
将选择XML文档中所有count
元素的所有moreThan
或creditors
子元素。
答案 1 :(得分:0)
假设您的xpath表达式正常,您只需将元素转换为字符串:
doc.xpath("home/creditors/*").to_s
=> "<count>2</count>"
请检查返回多个元素的查询,以确保其符合预期的行为。