Gibt es in Ruby eine Möglichkeit, alle Array-Elemente zu einer Zeichenfolge zu kombinieren?
Beispielarray:
@arr = ['<p>Hello World</p>', '<p>This is a test</p>']
Beispielausgabe:
<p>Hello World</p><p>This is a test</p>
Gibt es in Ruby eine Möglichkeit, alle Array-Elemente zu einer Zeichenfolge zu kombinieren?
Beispielarray:
@arr = ['<p>Hello World</p>', '<p>This is a test</p>']
Beispielausgabe:
<p>Hello World</p><p>This is a test</p>
Antworten:
Verwenden Sie die Array#join
Methode (das Argument für join
ist, was zwischen den Zeichenfolgen eingefügt werden soll - in diesem Fall ein Leerzeichen):
@arr.join(" ")
[1,2,3] => 123
?
join
arbeitet mit Aufzählungen von allem, was darauf reagiert to_s
, einschließlich Ganzzahlen, aber das Ergebnis ist immer eine Zeichenfolge. Wenn Sie ein ganzzahliges Ergebnis wünschen, können Sie es to_i
für das Ergebnis verwenden.
String#lines
, können Sie sie mit my_string.join('')
(beachten Sie das leere Zeichenfolgenargument) wieder zusammenbinden.
join
versucht es #to_str
zuerst und #to_s
zweitens.
Obwohl etwas kryptischer als join
, können Sie das Array auch mit einer Zeichenfolge multiplizieren.
@arr * " "
$ Array.instance_methods.*
($ ist eine Abkürzung für Show-Quelle)