有没有办法使用Scala在xml中选择以下兄弟元素?
所以,如果我有这样的xml:
<root>
<childA>A</childA>
<randomElementName>B</randomElementName>
</root>
我想做这样的选择:
(root \ "childA") followingSibling text
会给我"B"
答案 0 :(得分:1)
我想它并不像你想象的那么优雅,但它有效:
root.
child.
dropWhile{ _.label != "childA" }.
collect{ case e: xml.Elem => e }.
drop(1).
headOption.
map{ _.text }
// Option[String] = Some(B)
XPath
中没有scala.xml
,因此您应该像收集一样使用它。