END
トークンまで次の文字列を解析し、残りを無視したいだけです。
val input = """
0)
blah1
blah2
blah3
1)
blah4
blah5
END
blah6
"""
使用する
object Pars extends RegexParsers {
def strings: Parser[List[String]] = rep(str) <~ end
def str: Parser[String] = ".*".r
def end: Parser[String] = "END" <~ rep(".*".r)
}
Pars.parseAll(Pars.strings, input)
無限ループに入り、OutOfMemoryError になります。私は何を間違っていますか、これを修正するにはどうすればよいですか?