Class: Japanese
Class Method Summary collapse
- .convert_wareki(year) ⇒ Object
- .is_hiragana?(str) ⇒ Boolean
- .is_katakana?(str) ⇒ Boolean
- .to_date_str(tm) ⇒ Object
- .to_datetime_str(tm) ⇒ Object
- .to_hiragana(str) ⇒ Object
- .to_katakana(str) ⇒ Object
- .to_wday(wday) ⇒ Object
Class Method Details
.convert_wareki(year) ⇒ Object
3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 |
# File 'lib/ezframe/japanese_utils.rb', line 3 def convert_wareki(year) [ ["令和", 2019], ["平成", 1989], ["昭和", 1926], ["大正", 1912], ["明治", 1868], ].each do |a| gengo, start_at = a wareki = year - start_at + 1 if wareki > 0 wareki = "元" if wareki == 1 return "#{gengo}#{wareki}" end end end |
.is_hiragana?(str) ⇒ Boolean
25 26 27 28 |
# File 'lib/ezframe/japanese_utils.rb', line 25 def is_hiragana?(str) return nil if !str || str.empty? return /^[ぁ-ん\-ー―−]+$/ =~ str end |
.is_katakana?(str) ⇒ Boolean
20 21 22 23 |
# File 'lib/ezframe/japanese_utils.rb', line 20 def is_katakana?(str) return nil if !str || str.empty? return /^[ァ-ン\-ー―−]+$/ =~ str end |
.to_date_str(tm) ⇒ Object
50 51 52 53 |
# File 'lib/ezframe/japanese_utils.rb', line 50 def to_date_str(tm) return nil unless tm return "%d年%2d月%2d日" %[ tm.year, tm.mon, tm.mday] end |
.to_datetime_str(tm) ⇒ Object
45 46 47 48 |
# File 'lib/ezframe/japanese_utils.rb', line 45 def to_datetime_str(tm) return nil unless tm return "%d年%2d月%2d日 %2d:%02d:%02d" %[ tm.year, tm.mon, tm.mday, tm.hour, tm.min, tm.sec ] end |
.to_hiragana(str) ⇒ Object
30 31 32 33 |
# File 'lib/ezframe/japanese_utils.rb', line 30 def to_hiragana(str) return nil if !str return str.tr("ァ-ン\-ー―−", "ぁ-ん\-ー―−") end |
.to_katakana(str) ⇒ Object
35 36 37 38 |
# File 'lib/ezframe/japanese_utils.rb', line 35 def to_katakana(str) return nil if !str return str.tr("ぁ-ん\-ー―−", "ァ-ン\-ー―−") end |
.to_wday(wday) ⇒ Object
40 41 42 43 |
# File 'lib/ezframe/japanese_utils.rb', line 40 def to_wday(wday) return nil unless wday return %w(日 月 火 水 木 金 土)[wday] end |