Class: Japanese

Inherits:
Object show all
Defined in:
lib/ezframe/japanese_utils.rb

Class Method Summary collapse

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

Returns:

  • (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

Returns:

  • (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