在rails中将字符串转换为Array

我从rest客户端发送一个数组并收到它: "[1,2,3,4,5]"

现在我只想将它转换为Array而不使用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]