Scripttip: Doppelte Arrayschlüssel zusammenfassen

Im heutigen Scripttip möchten wir euch zeigen, wie doppelte Schlüssel in einem mehrdimensionalen Array zusammengeasst werden können.

In diesem Beispiel werden die Werte über einen join zusammengefasst, aber dies lässt sich einfach an die eigenen Bedürfnisse anpassen.

[ruby]
doppelteSchluesselArray = [[:b, ‚B1‘], [:d, ‚D2‘], [:a, ‚A1‘], [:a, ‚A2‘], [:a, ‚A3‘], [:d, ‚D1‘], [:c, ‚C1‘]]
Hash[doppelteSchluesselArray.group_by(&:first).map {|k,v| [k,v.map(&:last).join(‚, ‚)]}]
=> {:d=>"D2, D1", :a=>"A1, A2, A3", :b=>"B1", :c=>"C1"}
[/ruby]

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert.

Diese Website verwendet Akismet, um Spam zu reduzieren. Erfahre mehr darüber, wie deine Kommentardaten verarbeitet werden.