구성 파일에서 값을 추출하기 위해 하나의 라이너 (오히려 길지만)가 있습니다. 정규 표현식을 두 번 적용하지 않아도 행복하지 않습니다 (한 번은 줄을 일치시키고 그룹을 다시 얻습니다). 이 방법을 피할 수있는 방법에 대한 제안이있는 사람이 있습니까?스칼라 정규 표현식을 사용하여 파일에서 하나의 라이너로 값을 추출합니다.
예 데이터 TEMP.TXT :
scalaVersion=2.11.5
scalaXMLVersion=1.0.3
jUnitVersion=4.8.2
log4JVersion=1.2.17
"일"라이너
val cfg: File = new File("temp.txt")
val regexp = """jUnitVersion=(.*)"""
val version = Source.fromFile(cfg)
.getLines
.find(_.matches(regexp))
.map(regexp.r.findFirstMatchIn(_).get.group(1))
.getOrElse("NOTFOUND")
println(version)
출력
4.8.2
'collectFirst' – Dima
@Dima 감사합니다. 훨씬 좋네요. – Mikesname