Module: GyomuRuby::OrdinarySystemDevelopment::AddressFormatter

Defined in:
lib/gyomu_ruby/ordinary_system_development/address_formatter.rb

Constant Summary collapse

PREFS =
File.read(
  File.expand_path('../../../config/prefectures.csv', File.dirname(__FILE__))
).lines.map(&:strip).freeze
EXT_TEL_NUMBERS =
(ext_tel_numbers + %w[050 070 080 090 0120]).sort.reverse.freeze
EXT_TEL_NUMBERS_RE =
/\A(#{EXT_TEL_NUMBERS.sort.reverse.join('|')})/uo

Class Method Summary collapse

Class Method Details

.format_tel_no(telno_numeric_string, blank = '') ⇒ Object



23
24
25
26
27
28
# File 'lib/gyomu_ruby/ordinary_system_development/address_formatter.rb', line 23

def format_tel_no(telno_numeric_string, blank = '')
  return blank if telno_numeric_string.blank?
  telno_numeric_string.to_s.
    sub(EXT_TEL_NUMBERS_RE){ "#{$1}-" }.
    sub(/(\d{4})\Z/) { "-#{$1}" }
end

.format_zipcode(zipcode_string, blank = '') ⇒ Object



18
19
20
21
# File 'lib/gyomu_ruby/ordinary_system_development/address_formatter.rb', line 18

def format_zipcode(zipcode_string, blank = '')
  return blank if zipcode_string.blank?
  zipcode_string.sub(/\A(\d{3})(\d{4})\Z/){ "#{$1}-#{$2}" }
end

.prefecture_name(prefecture_code, blank = '') ⇒ Object



30
31
32
33
# File 'lib/gyomu_ruby/ordinary_system_development/address_formatter.rb', line 30

def prefecture_name(prefecture_code, blank = '')
  return blank if prefecture_code.blank?
  PREFS[prefecture_code.to_i - 1]
end