在for循环中编写此while循环

时间:2013-01-05 13:30:58

标签: scala stanford-nlp

我正在与StanfordNLP合作,从已解析的树中提取数据。

我正在使用Scala进行编码。

val tp = TregexPattern.compile("SOME_PATTERN")
val res = tp.matcher("SOME_TREE")

阅读我使用的结果

while (res.find()) {
  println(res.getMatch.getLeaves.mkString(" "))
}

我想在for-loop中重写这个while循环。

1 个答案:

答案 0 :(得分:1)

这个怎么样:

val tp = TregexPattern.compile("SOME_PATTERN")
val res = tp.matcher("SOME_TREE")
for(it <- Iterator.continually(res.getMatch).takeWhile(_ => res.find)) {
  println(it.getLeaves.mkString(" "))
}