给定字符串中的日期名称,如何在当前周内获得表示该日期的Time对象?

ben*_*ben 2 ruby time ruby-on-rails ruby-on-rails-3

给定一个带有日期名称的字符串,即"Wednesday"如何在当前周(周一至周日)内获得表示该日的Time对象?

因此,例如,如果当前日期是5月29日星期二,并且字符串是"Monday",则时间对象应该表示Monday 28 May.如果字符串是"Friday",它应该是Friday 1 June.

如果当前日期是6月5日星期二,而字符串是"Monday",则时间对象应该代表Monday 4 June.如果字符串是"Friday",它应该是Friday 8 June.

我使用的是Rails 3.2.0和Ruby 1.9.2.

Cas*_*per 7

这些类型的文本日期引用有一个非常方便的宝石,名为Chronic:http:
//chronic.rubyforge.org/

为了您的目的,您可以使用"this week"参考:

Chronic.parse("monday this week")
Chronic.parse("friday this week")
..etc..
Run Code Online (Sandbox Code Playgroud)

..应该按预期工作.