Ich habe eine Schnur
"1,2,3,4"
und ich möchte es in ein Array konvertieren:
[1,2,3,4]
Wie?
>> "1,2,3,4".split(",")
=> ["1", "2", "3", "4"]
Oder für ganze Zahlen:
>> "1,2,3,4".split(",").map { |s| s.to_i }
=> [1, 2, 3, 4]
Oder für spätere Versionen von Ruby (> = 1.9 - wie von Alex herausgestellt):
>> "1,2,3,4".split(",").map(&:to_i)
=> [1, 2, 3, 4]
"1,2,3,4".split(",")
als Zeichenfolge
"1,2,3,4".split(",").map { |s| s.to_i }
als ganze Zahlen
String Integer
Ohne Leerzeichen als String
arr = "12345"
arr.split('')
output: ["1","2","3","4","5"]
String Integer
Mit Leerzeichen als String
arr = "1 2 3 4 5"
arr.split(' ')
output: ["1","2","3","4","5"]
String Integer
Ohne Leerzeichen als Integer
arr = "12345"
arr.split('').map(&:to_i)
output: [1,2,3,4,5]
arr = "abc"
arr.split('')
output: ["a","b","c"]
Erklärung:
arr
-> Zeichenfolge, die Sie ausführen möchten.split()
-> ist eine Methode, die die Eingabe aufteilt und als Array speichert.''
Oder ' '
Oder ','
-> ist ein Wert, der aus dem angegebenen String entfernt werden muss.der einfachste Weg, eine Zeichenfolge mit einem Trennzeichen wie einem Komma zu konvertieren, ist die Verwendung der Aufteilungsmethode
"1,2,3,4".split(',') # "1", "2", "3", "4"]
weitere Informationen zur Verwendung der Aufteilungsmethode finden Sie in den Ruby-Dokumenten
Unterteilt str anhand eines Trennzeichens in Teilzeichenfolgen und gibt ein Array dieser Teilzeichenfolgen zurück.
Wenn pattern ein String ist, wird sein Inhalt als Trennzeichen beim Teilen von str verwendet. Wenn pattern ein einzelnes Leerzeichen ist, wird str in Leerzeichen aufgeteilt, wobei führende Leerzeichen und fortlaufende Leerzeichen ignoriert werden.
Wenn pattern ein Regexp ist, wird str geteilt, wo das Muster übereinstimmt. Immer wenn das Muster mit einer Zeichenfolge der Länge Null übereinstimmt, wird str in einzelne Zeichen aufgeteilt. Wenn das Muster Gruppen enthält, werden die entsprechenden Übereinstimmungen auch im Array zurückgegeben.
Wenn das Muster weggelassen wird, wird der Wert von $; wird genutzt. Wenn $; ist nil (dies ist die Standardeinstellung), str wird in Leerzeichen aufgeteilt, als ob "" angegeben worden wäre.
Wenn der Parameter limit weggelassen wird, werden nachfolgende Nullfelder unterdrückt. Wenn limit eine positive Zahl ist, wird höchstens diese Anzahl von Feldern zurückgegeben (wenn limit 1 ist, wird die gesamte Zeichenfolge als einziger Eintrag in einem Array zurückgegeben). Wenn negativ, gibt es keine Begrenzung für die Anzahl der zurückgegebenen Felder, und nachfolgende Nullfelder werden nicht unterdrückt.