日本の和暦に変換します。
以下のコードをアプリケーションのGemfileに追記します。
gem 'era_ja'
そして、以下をのコマンドを実行します。
$ bundle
もしくは
$ gem install era_ja
.travis.yml を確認してください。
NOTE :: era_ja0.4.0からruby1.9.3をサポートしていません。
引数としてstftimeのフォーマット文字列を使用出来ます。
EraJa#to_eraメソッドでの追加のフォーマット文字列は以下の通りです。
- %o: 元号(アルファベット)
- %O: 元号(漢字)
- %E: 元号の年
require 'era_ja'
Time.mktime(2012,4,29).to_era # => "H24.4.29"
Time.mktime(2012,4,29).to_era("%O%E年%m月%d日") # => "平成24年4月29日"
Time.mktime(2012,4,29).to_era("%O%JE年%Jm月%Jd日") # => "平成二十四年四月二十九日"
require 'era_ja
Date.new(2012,4,29).to_era # => "H24.4.29"
Date.new(2012,4,29).to_era("%O%E年%m月%d日") # => "平成24年4月29日"
Date.new(2012,4,29).to_era("%O%JE年%Jm月%Jd日") # => "平成二十四年四月二十九日"
Time.mktime(2012,4,29).to_era("%JY年%Jm月%Jd日") # => "二千十二年四月二十九日"
Date.new(2012,4,29).to_era("%JY年%Jm月%Jd日") # => "二千十二年四月二十九日"
もし1桁の元号文字列でコンバートしたい場合、 %1O
を使用することができます。
require 'era_ja'
Time.mktime(2012,4,29).to_era("%1O%E年%m月%d日") # => "平24年4月29日"
もしデフォルトの元号文字列以外の文字列でコンバートしたい場合、 era_names
を使用することができます。
require 'era_ja'
Time.mktime(2012,4,29).to_era(era_names: { heisei: ['h', '平'] }) # => "h24.4.29"
Time.mktime(2012,4,29).to_era("%O%E年%m月%d日", era_names: { heisei: ['h', '平'] }) # => "平24年4月29日"
Time.mktime(2012,4,29).to_era("%O%JE年%Jm月%Jd日", era_names: { heisei: ['h', '平'] }) # => "平二十四年四月二十九日"
# same as Date
問題を報告したり、機能追加の要望する場合はgithubのIssuesに登録してください。 https://github.com/tomiacannondale/era_ja/issues
- フォークして
- feature branchを作成して (
git checkout -b my-new-feature
) - 変更をコミットして (
git commit -am 'Added some feature'
) - ブランチをプッシュして (
git push origin my-new-feature
) - プルリクエストをください
元号については以下の問題点があります。
- 明治の開始を1868年9月8日としていますが旧暦での日付です。
- 大正、昭和の開始日はそれぞれ明治、大正の最終日と同日です。
tomi tomiacannondale@gmail.com
MITライセンスです。詳細は LICENSE を参照してください。