У меня есть строка в ruby, как это:
str = "AABBCCDDEEFFGGHHIIJJ01020304050607080910"
# 20 letters and 20 numbers in this case
Я хочу разбить это пополам, что я могу сделать вот так:
str[0, str.length/2]
или
str.split(0, str.length/2)
После этого мне нужно создать массивы с символами, но с длиной 2 для каждого элемента, например:
["AA", "BB", "CC", "DD", "EE", "FF", "GG", "HH", "II", "JJ"],
[01, 02, 03, 04, 05, 06, 07, 08, 09, 10]
Проблема заключается в том, что я не могу найти сжатый способ преобразования этой строки. Я могу сделать что-то вроде этого
arr = []
while str.length > 0 do
arr << str[0, 1]
str[0, 1] = ""
end
но я скорее хочу что-то вроде str.split(2)
, и длина строки может измениться в любое время.