我有一个日期,我想知道那个特定季度的月份。我如何用最简单的方法在ruby中完成这个任务?我的意思是,如果我给予的日期是27-04-2011,那么我必须得到的结果是四月,五月,六月作为字符串或int像4,5,6四月到六月。
27-04-2011
tsm1rwdh1#
您可以通过执行以下操作从任何日期获取25美分硬币:
quarter = (((Date.today.month - 1) / 3) + 1).to_i
字符串或者更短:
quarter = (Date.today.month / 3.0).ceil
型
juzqafwq2#
您可以执行以下操作:
m = date.beginning_of_quarter.month "#{m},#{m+1},#{m+2}"
字符串如在
>> date=Date.parse "27-02-2011" => Sun, 27 Feb 2011 >> m = date.beginning_of_quarter.month => 1 >> "#{m},#{m+1},#{m+2}" => "1,2,3"
qhhrdooz3#
您可以为此定义一个函数,以接受date作为参数并返回四分之一
date
def current_quarter_months(date) quarters = [[1,2,3], [4,5,6], [7,8,9], [10,11,12]] quarters[(date.month - 1) / 3] end
字符串该函数将根据日期所属的季度值返回数组。
9wbgstp74#
对于那些通过搜索“ruby date quarter”来到这里的人。你可以很容易地用quarter扩展Date类:
class Date def quarter case self.month when 1,2,3 return 1 when 4,5,6 return 2 when 7,8,9 return 3 when 10,11,12 return 4 end end end
字符串使用示例:
Date.parse("1 jan").quarter # -> 1 Date.parse("1 apr").quarter # -> 2 Date.parse("1 jul").quarter # -> 3 Date.parse("1 oct").quarter # -> 4 Date.parse("31 dec").quarter # -> 4
qmb5sa225#
您的问题的措辞方式可以只使用#月“那么我必须得到的结果是四月,五月,六月作为字符串或int像4,5,6为四月到六月。”四月是第四个月,
d = Date.parse('2014-04-01') => Tue, 01 Apr 2014 d.month => 4
字符串如果你真的想要这个季度,你可以打开date类并添加你自己的季度方法
class Date def quarter (month / 3.0).ceil end end
型示例使用
d = Date.parse('2014-04-01') => Tue, 01 Apr 2014 d.quarter => 2
p8h8hvxi6#
从Rails 7.1开始,有一个季度方法。
Date.new(2010, 1, 31).quarter # => 1 Date.new(2010, 4, 12).quarter # => 2 Date.new(2010, 9, 15).quarter # => 3 Date.new(2010, 12, 25).quarter # => 4
字符串所以现在,要得到这个季度就这么简单:
Date.parse("27-04-2011").quarter # => 2
来源:
Time
quarter
6条答案
按热度按时间tsm1rwdh1#
您可以通过执行以下操作从任何日期获取25美分硬币:
字符串
或者更短:
型
juzqafwq2#
您可以执行以下操作:
字符串
如在
型
qhhrdooz3#
您可以为此定义一个函数,以接受
date
作为参数并返回四分之一字符串
该函数将根据日期所属的季度值返回数组。
9wbgstp74#
对于那些通过搜索“ruby date quarter”来到这里的人。你可以很容易地用quarter扩展Date类:
字符串
使用示例:
型
qmb5sa225#
您的问题的措辞方式可以只使用#月
“那么我必须得到的结果是四月,五月,六月作为字符串或int像4,5,6为四月到六月。”
四月是第四个月,
字符串
如果你真的想要这个季度,你可以打开date类并添加你自己的季度方法
型
示例使用
型
p8h8hvxi6#
日期#季度(Rails 7.1+)
从Rails 7.1开始,有一个季度方法。
字符串
所以现在,要得到这个季度就这么简单:
型
来源:
备注:
Time
示例也支持quarter
方法。