Ruby 配列 %w %W (パーセントW) の違い

Rubyの配列 %w, %W の使い分けについてご紹介いたします。

%w, %W は配列の定義をすることができます。

以下に通常の配列定義、%w, %Wでの配列定義の方法を書いていきます。

p ['a1', 'a2'] # => ["a1", "a2"]
p %w(a1 a2) # => ["a1", "a2"]
p %W(a1 a2) # => ["a1", "a2"]

 

%Wも配列の定義が可能ですが、式展開が可能になります。

%wは式展開をすることができません。

one = 1
two = 2
p %W(a#{one} a#{two}) # => ["a1", "a2"]
p %w(a#{one} a#{two}) # => ["a\#{one}", "a\#{two}"]

配列定義で式展開が使えると動的に使う場合に対応できるのでとても便利ですね(*^^*)

何か参考になれば幸いです(*^^*)