class Phony::NationalCode
NationalCodes have a special numbers splitter, a national code splitter and a local code splitter.
Attributes
local_splitter[R]
Public Class Methods
new(national_splitter, local_splitter)
click to toggle source
# File lib/phony/national_code.rb, line 9 def initialize(national_splitter, local_splitter) @national_splitter = national_splitter @local_splitter = local_splitter end
Public Instance Methods
normalize(national_number, _options = {})
click to toggle source
Split gets a number without country code and removes a relative zero.
Note: Some cases, like Italy, don’t remove the relative zero.
# File lib/phony/national_code.rb, line 28 def normalize(national_number, _options = {}) national_number.gsub(/\A0+/, EMPTY_STRING) end
split(national_number)
click to toggle source
Split gets a number without country code and splits it into its parts.
# File lib/phony/national_code.rb, line 17 def split(national_number) zero, ndc_or_rest, rest = @national_splitter.split national_number.dup return [zero, ndc_or_rest] unless rest [zero, ndc_or_rest, *@local_splitter.split(rest)] end