Есть ли способ предварять каждый элемент массива чем-то.
Например:
file = File.new(my_file,'r') header = IO.readlines(my_file)[1] # header looks like [1,2,3] #Prepend each elelement of header with filename, something like header.prepend(filename+".") #header looks like [filename.1,filename.2,filename.3]
Вы хотите использовать карту:
["foo", "bar", "baz"].map { |word| "prepend-#{word}" } #=> ["prepend-foo", "prepend-bar", "prepend-baz"]
классический чехол для этого метода. Этот метод также может принимать массив, содержащий элементы любого типа.
У нас есть метод по умолчанию для добавления элементов в массив.
header = [1, 2, 3] header.map { |h| h.to_s.prepend("filename.")}}
Выход:
["filename.1", "filename.2", "filename.3"]