2013-10-25 62 views
-1

我有一個字符串:results = "123 456 "通過與空格的字符串迭代

我想通過串並打印迭代:「1,2,3,,4,5,6,」

這是我到目前爲止的代碼:

results.each do |k| 
    print k, "," 
end 

我也試過使用each_char

回答

1

這應該工作:

results.split('').join(',') 
# => "1,2,3, ,4,5,6, " 
+1

@布魯諾答案沒有說明'.each'。你爲什麼要再次迭代?你在'.join'之後完成。 – KappaNossi

+0

@布魯諾「不適合我」是什麼意思? –

+0

@MarekLipka也許你應該添加一個'print' – Stefan

1
results.each_char.map 
# => ["1", "2", "3", " ", "4", "5", "6", " "] 

或者,如果你想有一個字符串作爲輸出:

result.each_char.map.join(',') 
# => "1,2,3, ,4,5,6, " 
1

each_char作品對我來說:

results = "123 456 " 
results.each_char do |char| 
    print "#{char}," 
end 

輸出:

1,2,3, ,4,5,6, , 
1
"123 456 ".gsub(/(?<!\A)(?!\z)/, ",") 
# => "1,2,3, ,4,5,6, "