У меня есть программа в Ruby, которая берет номер телефона и может извлекать информацию с этого номера. Он может указать мне код области, корень и префикс числа.Как создать программу, которая позволяет пользователю указывать тип ввода?
Теперь я хочу добавить еще один параметр, в котором пользователь может ввести, что именно этот номер телефона их мобильный, рабочий номер и т.д.
Например:
MyContact1 = Info.new ('(555) 555-5555', :home)
=>(555) 555-5555 (home)
MyContact1.label
=>"home"
MyContact2. = Info.new (' 555-555-5555, "work")
=>(555) 555-5555 (work)
Вот мой код:
class PhoneNumber
def initialize (ph)
@ph = ph
@ph.insert(0, '(')
@ph.insert(4, ')')
@ph.insert(5, ' ')
@ph.insert(9, "-")
end
def to_s
@ph
end
def area_code
@ph.slice(0..5)
end
def prefix
@ph.slice(6..8)
end
def root
@ph.slice(10..13)
end
end
print "Please enter a phone number: "
puts a = PhoneNumber.new(gets.strip)
puts a.area_code
puts a.prefix
puts a.root
Есть вопрос здесь? –
Вам нужно попробовать, а затем, когда это не поможет, задайте конкретный вопрос. В вашем коде нет никаких доказательств того, что вы пытаетесь добавить поле, поэтому похоже, что вы хотите, чтобы мы записали его для вас. Пожалуйста, прочитайте «[ask]» и связанные страницы вместе с «[mcve]» и «[Сколько усилий ожидается от пользователей Stack Overflow?] (Http://meta.stackoverflow.com/q/261592)" , –
В производственном коде или коде, предназначенном для приема международных номеров, я бы рекомендовал не слепо вставлять информацию в номер телефона. Вы предполагаете, что пользователь еще не поместил их, и, если число не основано на U.S, ваше форматирование будет неправильным. Вместо этого вы должны использовать все, что используется для форматирования, сохранить значение, а затем, если вам нужно представить его пользователю, переформатируйте его соответствующим образом для своего региона или страны. –