J'aime cette expression littérale pour un tableau de chaînes:
%w( i can easily create arrays of words )
Je me demande s'il existe un littéral pour obtenir un tableau de symboles. Je sais que je peux faire
%w( it is less elegant to create arrays of symbols ).map( &:to_sym )
mais ce serait tellement merveilleux d'utiliser un littéral.
%w
notation?Réponses:
Oui! Ceci est désormais possible dans Ruby 2.0.0. Une façon de l'écrire est:
Vous pouvez également utiliser d'autres délimiteurs, vous pouvez donc également écrire
%i(foo bar)
ou%i!foo bar!
par exemple.Cette fonctionnalité a été initialement annoncée ici:
http://www.ruby-lang.org/zh_TW/news/2012/11/02/ruby-2-0-0-preview1-released/
Il est mentionné dans la documentation officielle de Ruby ici:
http://ruby-doc.org/core/doc/syntax/literals_rdoc.html#label-Percent+Strings
la source
%i[foo bar]
,%i{foo bar}
,%i!foo bar!
,%i%foo bar%
.%i[foo bar]
Dans Ruby 1.x, la liste des % -delimiters disponibles est malheureusement limitée
la source
%x
, semble plus lisible que la notation backticks que j'utilise