2017-02-12 4 views
2

リストl1をフィルタリングする方法他のリストl2の要素がl1に含まれている場合、l1をフィルタリングする方法。述語が他のリスト全体にある要素をフィルタリングする方法リスト

考えると二つのリストのLS1、LS2:

val ls1 = List("a b c" , "a c d" , "d e f") 
val ls2 = List("a" , "c") 

List("a b c" , "a c d")はLS1からLS2と "" & "C" 一致としてreturedする必要があります。

これは私が思い付いた最も近いものですが、リストはフィルタリングされません。 ls2

scala> val ls1 = List("a b c" , "a c d" , "d e f") 
ls1: List[String] = List(a b c, a c d, d e f) 

scala> val ls2 = List("a" , "c") 
ls2: List[String] = List(a, c) 

scala> ls1.filter(f => ls2.contains(f)).foreach(println) 

答えて

2

あなたはexists方法が欠落しています:

ls1.filter(f => ls2.exists(f.contains)) 
私は containsInList関数を定義するかどうかはわかりません
関連する問題