こういうのがあったとして
scala> val map = Map("id" -> 1, "date" -> "2015/11/01", "name" -> "Leprechaun", "weight" -> "9", "name2" -> "LOB") map: scala.collection.immutable.Map[String,Any] = Map(weight -> 9, name -> Leprechaun, name2 -> LOB, id -> 1, date -> 2015/11/01)
キーの名前id date name以外のものだけ残したい。完成品のイメージ。
Map(weight -> 9, name2 -> LOB)
除外したい名前のリストなどを用意して、filterKeysとcontainsの合わせ技で除外するのが良いかと。
scala> val keys = Set("id", "date", "name") keys: scala.collection.immutable.Set[String] = Set(id, date, name) scala> map.filterKeys(!keys.contains(_)) res4: scala.collection.immutable.Map[String,Any] = Map(weight -> 9, name2 -> LOB)