回答:
>> "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]
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]
arr = "abc"
arr.split('')
output: ["a","b","c"]
説明:
arr
->任意のアクションを実行する文字列。split()
->は、入力を分割して配列として保存するメソッドです。''
or ' '
または','
->は値であり、指定された文字列から削除する必要があります。コンマのような区切り文字を持つ文字列を変換する最も簡単な方法は、splitメソッドを使用することです。
"1,2,3,4".split(',') # "1", "2", "3", "4"]
Rubyメソッドのドキュメントで、splitメソッドの使用方法に関する詳細情報を見つけることができます
strを区切り文字に基づいて部分文字列に分割し、これらの部分文字列の配列を返します。
patternがStringの場合、その内容はstrを分割するときに区切り文字として使用されます。patternが単一のスペースの場合、strは空白で分割され、先頭の空白と一連の連続する空白文字は無視されます。
パターンが正規表現の場合、パターンが一致する場所でstrが分割されます。パターンが長さゼロの文字列に一致する場合は常に、strは個々の文字に分割されます。パターンにグループが含まれている場合、それぞれの一致が配列にも返されます。
パターンが省略されている場合、$の値。使用されている。$の場合; はnil(これがデフォルトです)で、strは ''が指定されたかのように空白で分割されます。
limitパラメータを省略した場合、後続のnullフィールドは抑制されます。limitが正の数の場合、最大でその数のフィールドが返されます(limitが1の場合、文字列全体が配列の唯一のエントリとして返されます)。負の場合、返されるフィールドの数に制限はなく、後続のnullフィールドは抑制されません。
"12345".each_char.map(&:to_i)
each_char
基本的に同じsplit('')
です:文字列をその文字の配列に分割します。
うーん、元の質問では文字列にカンマが含まれているので、私の答えはあまり役に立ちません;-( ..