您好我是Spark的新手,我有一个场景,我有2个关键字列表,关键字可以是单个词或短语。我必须过滤掉列表中出现的关键字(完全匹配),或者即使在列表2中找到列表1中的子字符串。
例如。
PosList= List ( "Abc","Spark is awesome","Scala is powerful")
Neglist= List ("Powerful","Abc","Xyz")
Output = List ("Scala is powerful","Abc")
我已经达到了完全匹配的用例。但是在部分比赛中挣扎。
我们非常感谢您的帮助。
答案 0 :(得分:0)
我也是scala的初学者,因此以下解决方案可能不是最好的,但它会起作用。以下解决方案适用于关键字的精确匹配(也是子串的完全匹配)
PosList.filter(x => if(x.split(" ").map(y => Neglist.contains(y)).toList.contains(true)) true else false)