通常、要素がa,b,c,d の配列を作るとき、
irb(main):003:0> array=["a", "b", "c", "d"]
とするが、要素ごとに"(ダブルコーテーション)でくくらないといけないのでかなり面倒。
そこで%w記法を使うと楽に作成できる。
%w!のあとに要素ごとにスペースで区切ってあげれば、区切りごとの要素で配列が作られる。
便利!
irb(main):006:0> array=%w!a b c d! => ["a", "b", "c", "d"]
要素にスペースを入れたい場合は、\(バックスラッシュ)でエスケープしてあげればよい
irb(main):007:0> array=%w!a\ a b c d! => ["a a", "b", "c", "d"]
式展開を使う場合は、%W(Wは大文字)としてあげればよい
irb(main):014:0* a=123 => 123 irb(main):015:0> array=%W!#{a} b c d! => ["123", "b", "c", "d"] irb(main):016:0>
リンク