大家好我正在为一些关键词解析非结构化文件,但我似乎无法轻易找到我正在调整的结果的行号
val filePath:String = "myfile"
val myfile = sc.textFile(filePath);
var ora_temp = myfile.filter(line => line.contains("MyPattern")).collect
ora_temp.length
但是,我不仅希望找到包含MyPatterns的行,而且我想要更像一个tupple(Mypattern行,行号)
提前致谢,
答案 0 :(得分:1)
您可以使用ZipWithIndex作为eliasah在注释中指出(可能是使用直接元组访问器语法执行此操作的最简洁方法),或者像使用过滤器中的模式匹配一样:
val matchingLineAndLineNumberTuples = sc.textFile("myfile").zipWithIndex().filter({
case (line, lineNumber) => line.contains("MyPattern")
}).collect