Я хочу удалить ведущие нули из числа. Я хочу использовать Integer(i)
вместо i.to_i
, чтобы спасти нуль.Удалить ведущие нули Ruby
"011,12,h,013,14".split(",").map{|i| Integer i rescue nil}
я хочу получить:
[11,12,nil,13,14]
вместо я получаю это:
[9, 12, nil, 11, 14]
Что может быть проблема?
строки цифр, начиная с нуль по умолчанию интерпретируется как восьмеричные числа. См. Также http://wordaligned.org/articles/octal-literals –
Невозможно выбрать ответ. Я предлагаю, чтобы в будущем вы считаете, что вы ожидаете, по крайней мере, пару часов; многие здесь ждут несколько часов, а иногда и целый день. (Иногда никогда, конечно.) Быстрый выбор может отбить другие ответы, и imo не учитывает тех, кто все еще работает над ответами. –
Да, cary, я буду делать это в будущих вопросах. (Новый пользователь здесь) – owade