2012年1月6日金曜日

Ruby で休日を判定する。

●ライブラリのdate2では、祝祭日の判定を行なうことができます。以下の例では、2012年1月9日が祝祭日かどうかを判定しています。2012年の成人の日にあたるため、trueが返ってきます。



require "date"
require "date/holiday"

p Date.new(2012,1,9).national_holiday?    #=> true




date2ライブラリは以下のサイトから入手できます。

http://raa.ruby-lang.org/list.rhtml?name=date2


 

●date/holidayライブラリを使うと、今月の第3月曜日などという日付を求めることもできます。以下の例では、今月の第3月曜日を求めています。2012年1月16日が返ってきます。







require "date"
require "date/holiday"

today = Date.today
d = Date.nth_kday(today.year, today.month , 3, 1 )
puts d.to_s    #=> 2012.1.16

0 件のコメント:

コメントを投稿