2
我想解析Scala中的XML使用scala.xml.XML,我想避免必須通過XPath傳遞字符串到XML Elem才能獲得NodeSeq。Scala XML解析與Xpath
必須在多個地方指定像elem \\ "tag1" \\ "tag2" \\ "@tagN"
這樣的字符串似乎很脆弱且重複。
大部分的Scala XML解析教程都解析XPath硬編碼字符串jank - elem \\ "tag1" \\ "tag2" \\ "@tagN"
- 無處不在。
是否有可能編寫一個方法,通過XPath通過Seq [String]搜索Elem並返回一個NodeSeq?
的方法看起來是這樣的:
def getNodeFromXml(elem: Elem, tags: Seq[String]): NodeSeq = {
Returns a NodeSeq elem \\ tags(0) \\ tags(1) \\ ... \\ tags(tags.length)
}
感謝
這比我想的方法更清潔。 我試圖使用遞歸傳遞Seq的NodeSeq +尾部,當seq.length爲1時,返回最終的NodeSeq。 我試圖使用集合內置插件,但從來沒有想過使用foldLeft。感謝你的分享! – Anthony 2015-03-08 21:09:00