Platz im Ruby-Array um% w


81

Wie kann ich dem Ruby-Array Leerzeichen hinzufügen, wenn ich die Syntax% w (abc) verwenden möchte?


12
Die %w()Syntax ist als Abkürzung für einen allgemeinen Fall gedacht. Ich würde ['a', ' ', 'b']in diesem Fall empfehlen, die ausführlichere Syntax zu verwenden. Besser lesbar, für andere Programmierer weniger überraschend.
Ben Marini

Antworten:


162

Entkomme:

%w(a b\ c) # => ["a", "b c"]

2
Vielen Dank. Nach Ihrer Antwort verstehe ich, wie ich es machen kann. Ich wollte genau das -% w (a \ bc) # => ["a", "", "b", "c"]
Vasiliy Ermolovich

3
Während dies eine "richtige" Antwort ist, ist sie schrecklich unlesbar, was den Zweck von zunichte macht %w. Tu das nicht.
Abschlag

Das ist eigentlich eine Art kluger @VasiliyErmolovich. Ruby hat alle möglichen "Tricks" und ich finde immer neue Wege, Dinge mit der Sprache auszudrücken. So unlesbar es auch sein mag, es ist ordentlich, dass die Ruby-Sprache die Syntax in Ihrer Antwort in erster Linie unterstützt!
Danielricecodes

2
Es ist fair darauf hinzuweisen, dass der Ruby Community Style Guide diese Syntax nur bevorzugt, wenn Sie eine Reihe von Wörtern erstellen : "Nicht leere Zeichenfolgen ohne Leerzeichen und Sonderzeichen". Sie haben also Recht, Sie sollten wahrscheinlich nie das tun, was ich vorgeschlagen habe.
Gareth


Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.