在for循环中编写while循环
问题描述:
我正在与StanfordNPP从解析的树中提取数据。在for循环中编写while循环
我正在使用Scala进行编码。
val tp = TregexPattern.compile("SOME_PATTERN")
val res = tp.matcher("SOME_TREE")
读的这个结果我用
while (res.find()) {
println(res.getMatch.getLeaves.mkString(" "))
}
我想重写for循环,而这个循环。
答
如何:
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(" "))
}
运作良好,但it'返回的'的第一个结果是'null',如何来处理呢? – amrnt
这样的工作'标签 res.find)如果标签!= null'但有没有更好的方法?或以另一种方式整个代码?! – amrnt
将“res.find”放在for循环前面以避免变为null。 – SpiderPig