Ruby: вводить пробелы каждые X количество символов В строке ruby, как я могу вставить пробел в каждое число X символов? В качестве примера я хотел бы вставить пробел каждые 8 символов данной строки. Ответ 1 >> s = "1234567812345678123456781234567812345678" => "1234567812345678123456781234567812345678" >> s.gsub(/(.{8})/, '\1 ') => "12345678 12345678 12345678 12345678 12345678 " Изменить:. Вы можете использовать позитивный просмотр, чтобы не добавлять дополнительное пространство в конец: >> s.gsub(/(.{8})(?=.)/, '\1 \2') => "12345678 12345678 12345678 12345678 12345678" Ответ 2 Альтернативное решение: s.scan(/.{1,8}/).join(' ') String#scan будет разбивать его на вас (в количествах, состоящих из 8 символов, за исключением последнего фрагмента, который может быть короче), а затем Array#join воссоединяет куски с соответствующим символом вкрапленным.
Ответ 1 >> s = "1234567812345678123456781234567812345678" => "1234567812345678123456781234567812345678" >> s.gsub(/(.{8})/, '\1 ') => "12345678 12345678 12345678 12345678 12345678 " Изменить:. Вы можете использовать позитивный просмотр, чтобы не добавлять дополнительное пространство в конец: >> s.gsub(/(.{8})(?=.)/, '\1 \2') => "12345678 12345678 12345678 12345678 12345678"
Ответ 2 Альтернативное решение: s.scan(/.{1,8}/).join(' ') String#scan будет разбивать его на вас (в количествах, состоящих из 8 символов, за исключением последнего фрагмента, который может быть короче), а затем Array#join воссоединяет куски с соответствующим символом вкрапленным.