gpt4 book ai didi

ruby - REXML - 如何提取单个元素

转载 作者:数据小太阳 更新时间:2023-10-29 07:57:26 26 4
gpt4 key购买 nike

我正在用 ruby​​ 编写一些验收测试,其中涉及断言响应 XML 中存在值。

我的 XML 是这样的:

<?xml version="1.0"?>
<file xmlns:dvi=xxxxx>
<name>whatever</name>
</file>

还有其他属性,但上面的内容应该可以说明我的观点。这是我的 ruby 代码:

xml = <the xml above>
xmlDoc = REXML::Document.new(xml)
puts xmlDoc.elements().to_a('file/name')

这会打印出 <name>whatever</name>但我希望它简单地打印出 whatever

在这个 XML 中只有一个名称元素。我已经能够使用 elements.each 打印出我想要的文本但这似乎有点矫枉过正。

谢谢,阿德里安

最佳答案

尝试

xmlDoc.elements().to_a('file/name').first.text

然后添加一些错误处理(这不是健壮的)。

to_a 返回一个 REXML 元素数组。使用 first 检索第一个(而且应该是唯一的)元素。使用 text 您可以访问该元素的文本内容。

关于ruby - REXML - 如何提取单个元素,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7347218/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com