我有一个 xml(存储在变量报告中),如下所示:
<wrapper>
<Sample Id="SomeId1">
<Tag Id="SomeTag">
<Lane Id="1">
[...]
</Lane>
</Tag>
</Sample>
<Sample Id="SomeId2">
<Tag Id="SomeTag">
<Lane Id="1">
[...]
</Lane>
</Tag>
</Sample>
</wrapper>
我想从“Sample”节点中提取“Id”属性。我阅读了以下文章 http://www.codecommit.com/blog/scala/working-with-scalas-xml-support然后尝试:
(report \\ "Sample" \ "@Id").text
返回一个空字符串:
scala> (report \\ "Sample" \ "@Id").text
res16: String = ""
但我应该将“SomeId1SomeId2”作为返回值。我做错了什么?
我发现了几个与我相似的问题。例子: Scala: XML Attribute parsing
最佳答案
我是这样工作的:
(xml \\ "Sample").map(n => (n \ "@Id").text)
=> scala.collection.immutable.Seq[String] = List(SomeId1, SomeId2)
但是一定有更好的解决方案……
关于xml - 选择 xml 属性,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11758607/