2

我有 2 个日期范围,start_date1..end_date1并且start_date2..end_date2,是否有一种简单的“红宝石”方法来查找两个范围内的所有日期?

4

1 回答 1

3

您可以使用

(start_date1..end_date1).to_set & (start_date2..end_date2).to_set

这是一个完整的示例:

require 'date'
require 'set'
((Date.today - 3)..(Date.today + 2)).to_set & (Date.today..(Date.today + 5)).to_set

如果你在计算字符,你也可以这样做

(start_date1..end_date1).to_set & start_date2..end_date2

但我认为原始版本更清晰。

于 2010-05-26T23:44:00.090 回答