I have 2 date ranges, start_date1..end_date1
and start_date2..end_date2
, is there an easy "ruby" way to find all the dates that are in both ranges?
可以将文章内容翻译成中文,广告屏蔽插件可能会导致该功能失效(如失效,请关闭广告屏蔽插件后再试):
问题:
回答1:
You can use
(start_date1..end_date1).to_set & (start_date2..end_date2).to_set
here's a fully worked example:
require 'date'
require 'set'
((Date.today - 3)..(Date.today + 2)).to_set & (Date.today..(Date.today + 5)).to_set
if you're counting characters, you can also just do
(start_date1..end_date1).to_set & start_date2..end_date2
but I think the original version is clearer.