如何在Ruby中分隔分隔string并将其转换为数组?

我有一个string

"1,2,3,4"

我想将它转换成一个数组:

 [1,2,3,4] 

怎么样?

 >> "1,2,3,4".split(",") => ["1", "2", "3", "4"] 

或整数:

 >> "1,2,3,4".split(",").map { |s| s.to_i } => [1, 2, 3, 4] 

或者对于更高版本的ruby(> = 1.9 – Alex指出):

 >> "1,2,3,4".split(",").map(&:to_i) => [1, 2, 3, 4] 

"1,2,3,4".split(",")作为string

"1,2,3,4".split(",").map { |s| s.to_i } "1,2,3,4".split(",").map { |s| s.to_i }作为整数

对于String Integer没有空格作为String

 arr = "12345" arr.split('') output: ["1","2","3","4","5"] 

对于String Integer与空间作为String

 arr = "1 2 3 4 5" arr.split(' ') output: ["1","2","3","4","5"] 

不带空格的String Integer Integer

 arr = "12345" arr.split('').map(&:to_i) output: [1,2,3,4,5] 

对于string

 arr = "abc" arr.split('') output: ["a","b","c"] 

说明

  1. arr – >string,你将要执行任何操作。
  2. split() – >是一个方法,它分割input并将其作为数组存储。
  3. ''' '',' – >是一个值,需要从给定的string中删除。