回答
d = "26 Jun'17"
#⇒ "26 Jun'17"
▶ Date.today >= Date.parse(d.tr("'", ' '))
#⇒ false
Date#parse
理解“17年6月26日”:
▶ Date.parse d.tr("'", ' ')
#⇒ #<Date: 2017-06-26 ((2457931j,0s,0n),+0s,2299161j)>
2016年或2017年是“2016年6月16日”吗?由于这个原因,两位数的年份是荒谬的。在20世纪80年代和90年代,你拥有非冲突数字的奢侈品,但直到2032年,我们才会回到正轨。 – tadman
@tadman嗯,整个Rails Colossus建立在_conventions_的地下室。毕竟'01/02/2016'具有相同的含糊性。 'DateTime'将XX Jun YY'视为“当前世纪的YY,今年XX,XX日”,我们可能应该考虑使用它。 – mudasobwa
@tadman人们应该使用数字来代替天数,字母数月和罗马字符多年:'6月17日MMXVI'。 – mudasobwa
将其转换为DateTime对象,并且然后与其他日期时间对象?
time_one = DateTime.new(2001,2,3)
time_two = DateTime.new(2001,1,3)
time_one > time_two
您可以使用Date
模块从Ruby的标准库来解析您的日期字符串,然后使用<=>
比较。
顺便说一句,如果你是在一个“纯”红宝石的环境中工作(不是Rails的控制台),你不得不把它列入到你的代码:
require 'date'
Date.parse("26 Jun'17") > Date.today # => true
- 1. 如何检查日期是否已过
- 2. 我应该如何检查到期日是否已过期?
- 3. php检查日期是否已过去
- 4. strtotime日期验证通过无效日期
- 5. Firebase身份验证UID是否过期?
- 6. 如何知道在php中是否已经过期/过期?
- 7. 如何验证结束日期是否大于开始日期?
- 8. 证书已过期?
- 9. 如何通过按日期
- 10. 如何通过日期
- 11. 连续检查的日期是否已经过期
- 12. ServiceStack Jwt身份验证检查是否已通过验证
- 13. 如何知道Kerberos票证是否已过期
- 14. 检查日期是否已过期Laravel日期字段类型SQL
- 15. 日期比较 - 如何检查20分钟是否已过?
- 16. Android:我如何检查WiFi是否已通过验证
- 17. 如何知道注册邮箱是否已通过验证?
- 18. 如何测试单元格是否已通过数据验证?
- 19. 添加日期,检查过期是否过期
- 20. 如何通过C#代码获取证书的到期日期?
- 21. mvc 5验证过去的日期
- 22. 筛选出已经通过的日期
- 23. Android证书过期日期是否影响企业Android应用?
- 24. Codeigniter:验证 - 日期不超过两个日期
- 25. 组通过日期
- 26. 如何验证日期
- 27. 需要验证退货日期是否大于出发日期?
- 28. 如何检查日期是否过期(PHP)
- 29. “W3C标记验证”的网站是否已通过认证?
- 30. 日期验证
的可能的复制[红宝石解析日期字符串] (http://stackoverflow.com/questions/21391953/ruby-parse-date-string) –
我已经看到了很多狂野和狡猾的日期格式,但那是一个真正令人困惑的尴尬。 – tadman
我不想将此标记为提名示例的副本,因为该问题已关闭。不过,我认为这个问题还不清楚。你是否想要解析日期字符串,或者检查日期是否过期,或两者兼得?如果您需要帮助检查它是否过期,那么“过期”是什么意思?这是否意味着你需要知道日期是否比某个恒定的日期更早?或者说它比今天更古老呢? –