首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >具有常规日期读取功能的SUTime

具有常规日期读取功能的SUTime
EN

Stack Overflow用户
提问于 2014-05-26 19:53:44
回答 3查看 854关注 0票数 2

我正在使用SUutime / stanford nlp,它做得很好,但我不知道如何读取常规的日期格式。

例如:

“我们是在1988年10月27日去参加活动的。”

它返回null

对于这样的表达:“我们在1988年10月27日去了活动”,它工作得很好。

有什么想法吗?

干杯

EN

回答 3

Stack Overflow用户

发布于 2014-05-27 17:04:42

我没有使用斯坦福时态软件包的经验,但它可能没有针对该时态格式进行调整。

我建议你看一下这个:http://cogcomp.cs.illinois.edu/page/software_view/IllinoisTemporalExtractor

它基本上是基于HeidelTime工作的:https://code.google.com/p/heideltime/

票数 3
EN

Stack Overflow用户

发布于 2014-05-28 18:52:44

好了,各位,我想我明白了。

在sutime/english.sutime.txt行319中,有几种用于US标记的模式:

{ ruleType:“时间”,模式:/yyyy-?mm-?dd-?‘t’‘HH(:?mm(:?ss(.,S{1,3})?(Z)?/}

{ ruleType:“时间”,模式: /yyyy-MM-dd/ }

{ ruleType:“时间”,模式:/‘T’‘HH(:?mm(:?ss(.,)?(Z)?/}

Tokenizer“有时会添加额外的斜杠

{ ruleType:“时间”,模式: /yyyy\?/MM\?/dd/ }

{ ruleType:“时间”,模式: /MM?\?/dd?\?/(yyyy|yy)/ }

{ ruleType:“时间”,模式: /MM?-dd?-(yyyy|yy)/ }

{ ruleType:“时间”,模式: /HH?:mm(:ss)?/ }

{ ruleType:“时间”,模式: /yyyy-MM/ }

只需要添加几个ruleTypes,就可以获得所需的订单

票数 1
EN

Stack Overflow用户

发布于 2016-02-22 05:47:04

我把这个放在这里,以防有人觉得有用。

问题是不支持某些时间格式。

查看sutime/english.sutime.txt文件,您将看到如下所示的行。TODO显示仍然可以添加其他格式。我添加了另外两个,如下所示:

代码语言:javascript
复制
  # TODO: Support other timezone formats
  { ruleType: "time", pattern: /yyyy-?MM-?dd-?'T'HH(:?mm(:?ss([.,]S{1,3})?)?)?(Z)?/ }
  { ruleType: "time", pattern: /yyyy-MM-dd/ }
  { ruleType: "time", pattern: /'T'HH(:?mm(:?ss([.,](S{1,3}))?)?)?(Z)?/ }
  #The entries below are newly added to support other time formats.
  { ruleType: "time", pattern: /dd\/MM\/yyyy/ }
  { ruleType: "time", pattern: /dd-MM-yyyy/ }

新添加的条目使SUTime能够正确识别表单的时间格式:

2014年12月20日或2014年12月28日

这与OPs所需的表单相同。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/23869531

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档