【发布时间】:2016-07-02 15:38:37
【问题描述】:
核心 NLP 正在解析如下字符串:
1.5 小时
使用以下代码作为一小时的持续时间:
def getPeriods(text: String): Seq[Period] = {
parse(text).filter(timexAnn => {
val timeExpr: TimeExpression = timexAnn.get(classOf[TimeExpression.Annotation])
timeExpr.getValue.getType == duration
}).map(timexAnn => {
val timeExpr: TimeExpression = timexAnn.get(classOf[TimeExpression.Annotation])
val period = timeExpr.getTemporal.getDuration.getJodaTimePeriod
log.debug("Parsed period: " + TimeUtils.getHourMinutePeriodFormatter.print(period))
period
})
}
我将采用生成的 Seq[Period] 的第一个也是唯一一个成员。我一直在玩online demo,这种行为似乎是意料之中的。也许我错过了什么?如果没有,有没有更好的选择?
【问题讨论】:
标签: java scala nlp stanford-nlp