2
我有兩個日期範圍start_date1..end_date1
和start_date2..end_date2
,是否有一種簡單的「ruby」方式來查找兩個範圍內的所有日期?如何查找兩個範圍內的共同日期
我有兩個日期範圍start_date1..end_date1
和start_date2..end_date2
,是否有一種簡單的「ruby」方式來查找兩個範圍內的所有日期?如何查找兩個範圍內的共同日期
您可以使用
(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
但我認爲原始版本更清晰。
使用'to_a'而不是'to_set'會更快一些,並且會產生相同的結果。 – 2012-01-06 23:41:46