From fdb0f51e586fb07ebc564bd85c691e3e6e365095 Mon Sep 17 00:00:00 2001 From: James Walker Date: Mon, 22 Oct 2018 11:44:36 -0400 Subject: [PATCH] ruby - phone-number --- ruby/phone-number/phone_number.rb | 18 ++++-------------- 1 file changed, 4 insertions(+), 14 deletions(-) diff --git a/ruby/phone-number/phone_number.rb b/ruby/phone-number/phone_number.rb index faef5eb..39c172b 100644 --- a/ruby/phone-number/phone_number.rb +++ b/ruby/phone-number/phone_number.rb @@ -1,19 +1,9 @@ +# PhoneNumber class class PhoneNumber def self.clean(number) - number.gsub!(/[^0-9]/, '') + number = number.gsub(/\D/, '').sub(/^[01]/, '') + return nil if number.length != 10 || %w[0 1].include?(number[3]) - if number.length < 10 or number.length > 11 - nil - elsif number.length == 11 - if number[0] == "1" - number.slice(1, number.length) - else - nil - end - elsif ["0", "1"].include?(number[0]) or ["0", "1"].include?(number[3]) - nil - else - number - end + number end end