Eri*_*rik 3 ruby nested nokogiri
src = '<paragraph>And bla foo <note>not important</note> bar baz</paragraph>'
doc = Nokogiri::XML(src)
puts doc.xpath('paragraph').first.content
Run Code Online (Sandbox Code Playgroud)
上面的代码返回:
"And bla foo not important bar baz"
Run Code Online (Sandbox Code Playgroud)
我正在寻找一种方法来获取没有嵌套元素的内容.上面的例子只是一个示例XML,但在这个例子中我希望这样做:
"And bla foo bar baz"
Run Code Online (Sandbox Code Playgroud)
puts doc.xpath('paragraph/child::text()')
Run Code Online (Sandbox Code Playgroud)
多年来我一直没有使用XPath愤怒,但这似乎有效.
或者更好的是:
puts doc.xpath('paragraph/child::text()').to_s.squeeze(' ')
Run Code Online (Sandbox Code Playgroud)