我正在使用 Chronic 来获取任何给定年份的月份的最后一个星期日。它会很乐意给我第n个星期日,但不是最后一个。
这有效,但不是我需要的:
Chronic.parse('4th sunday in march', :now => Time.local(2015,1,1))
这是我需要的,但不起作用:
Chronic.parse('last sunday in march', :now => Time.local(2015,1,1))
有什么办法可以绕过这个明显的限制吗?
更新:我赞成下面的两个答案,因为它们都很好,但我已经在“纯 Ruby”中实现了这个(在 2 行代码中,除了require 'date'
一行),但我试图向管理层展示Ruby 是用来替换即将消失的 Java 代码库的正确语言(并且它有几十行代码来计算它),我告诉一位经理我可能可以用一行 Ruby 来完成它,它将是可读且易于维护的。