如何过滤List l1,其中l1中包含其他List l2中的元素。
给出两个列表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")
应该被视为“a”& “c”与来自ls1的ls2匹配。
这是我最接近的,但List未被过滤。我不确定如何定义containsInList
函数:
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)
答案 0 :(得分:2)
您错过exists
上的ls2
方法:
ls1.filter(f => ls2.exists(f.contains))