src = '<paragraph>And bla foo <note>not important</note> bar baz</paragraph>'
doc = Nokogiri::XML(src)
puts doc.xpath('paragraph').first.content
上面的代码返回:
"And bla foo not important bar baz"
我正在寻找一种无需嵌套元素即可获取内容的方法。
上面的例子只是一个 XML 示例,但在这个例子中,我想要这样的结果:
"And bla foo bar baz"
最佳答案
puts doc.xpath('paragraph/child::text()')
多年来我一直没有在愤怒中使用 XPath,但这似乎有效。
或者更好:
puts doc.xpath('paragraph/child::text()').to_s.squeeze(' ')
关于ruby - 如何使用 Nokogiri 获取没有嵌套元素的内容,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/4679175/