【发布时间】:2011-06-16 21:11:20
【问题描述】:
是否有通用解析器来解析“...以前”字符串并将它们转换为 DateTime 对象?
可能的句子有:
- 1 年|@count 年(和 1 周|@count 周)前
- 1 周|@count 周(和 1 天|@count 天)前
- 1 天|@count 天(和 1 小时|@count 小时)前
- 1 小时|@count 小时前(和 1 分钟|@count 分钟)前
- 1 分钟|@count 分钟前(和 1 秒|@count 秒)前
- 1 秒|@count 秒前
所以它要么是两个(Foo 和 Bar 前)的组合,要么是一个(Foo 前)的组合。它可以是单数或复数。
Ruby 的DateTime::parse() 无法处理此问题,DateTime::strptime() 也无法处理。
我希望有一个 gem 或 sn-p 可以处理这个问题。
否则,我将不得不创建自己的解析器,在这种情况下,非常欢迎提供指向如何创建自己的 DateTime 解析器的指针。
旁注:供将来参考:这些是 Drupals Format Interval 生成的时间字符串
【问题讨论】: