5
次のように簡略化する方法はありますか?または別の関数で定型文を減らすことはできますか?Scala XML、親が属性値と一致するノードを取得
scala> val ns = <foo><bar id="1"><tag>one</tag><tag>uno</tag></bar><bar id="2"><tag>two</tag><tag>dos</tag></bar></foo>
ns: scala.xml.Elem = <foo><bar id="1"><tag>one</tag><tag>uno</tag></bar><bar id="2"><tag>two</tag><tag>dos</tag></bar></foo>
scala> (ns \\ "bar" filterNot{_ \\ "@id" find { _.text == "1" } isEmpty}) \\ "tag"
res0: scala.xml.NodeSeq = NodeSeq(<tag>one</tag>, <tag>uno</tag>)
ありがとうございます。私が本当に探しているのは、フィルター{_ \\ "@id"が存在する(_.text == "1")})のセレクターを作成する方法です。次に、(x \\ "bar" \ @( "@id"、 "1")\\ "tag" – eptx
私はあなたのアイデアが好きです。 – Lachlan