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