我需要一个scala解决方案,这是一个匹配我的第一个记录条目的模式,该条目跨多个记录中的多行。记录将始终以RECORD一词开头。
Scenario1
================================================== RECORD-1
"FOO BAR"
"ID-100"
"TOY"
==================================================
Scenario2
================================================== RECORD-1
"FOO BAR"
"ID-100"
"TOY"
RECORD-2
"X BAR"
"ID-200"
"DOLL"
RECORD-3
"Y BAR"
"ID-400"
"STATUE"
==================================================
在这两种场景中,我需要使用scala代码提取第一条记录“FOO BAR”。 REPL解决方案更受欢迎。
答案 0 :(得分:0)
您可以从简单捕获所有内容开始,直到第二条记录。
scala> val firstRec = io.Source.fromFile("records.txt").getLines.takeWhile(_ != "RECORD-2")
firstRec: Iterator[String] = non-empty iterator
从那里你可以修剪不需要的部分(标题,空白行,等等)的记录。