在scala中匹配字符串

时间:2016-02-09 23:47:11

标签: string scala

我正在尝试创建一个获取列表列表(从csv文件中读取)和字符串的方法,并输出包含该字符串的所有数据的列表。

数据示例:

"Joe, 14,1989"
"John, 13,1999"
"Mary, 10, 2000"

我的功能是:

def name(info: List[List[String]], str: String): List[List[String]] = 
info.filter(lst =>lst.head.toString == str)

然而,我得到一个空列表作为回报。比较scala中字符串的最佳方法是什么?

1 个答案:

答案 0 :(得分:2)

由于您正在调用.head,因此只会返回第一个元素等于str的列表。 (调用.toString也是多余的,因为这些项目已经是字符串了。)

您想要的是info.filter(lst => lst.contains(str)),或只是info.filter(_.contains(str))