レストクライアントから配列を送信し、次のように受信しました:"[1,2,3,4,5]"
Rubyのeval
メソッドを使用せずに、配列に変換したいだけです。これに使用できるRubyのデフォルトのメソッドはありますか?
"[1,2,3,4,5]" => [1,2,3,4,5]
たぶんこれ?
s.tr('[]', '').split(',').map(&:to_i)
require 'json'
JSON.parse "[1,2,3,4,5]"
#=> [1, 2, 3, 4, 5]
JSON.parse "[[1,2],3,4]"
#=> [[1, 2], 3, 4]
eval
を避けたい場合、さらに別の方法:
"[1,2,3,4,5]".scan(/\d+/).map(&:to_i) #assuming you have integer Array as String
#=> [1, 2, 3, 4, 5]