大文字と小文字の記法の違い
大文字→式展開できる
小文字→式展開されない
1.%、%Q、%q
ダブルクオートで囲う場合と同等。
シングルクオートやダブルクオートのエスケープが不要になる。
str = %(Programming language "Ruby") puts str # => Programming language "Ruby" ruby = "Ruby" str2 = %(Programming language "#{ruby}") puts str2 # => Programming language "Ruby"
ruby = "Ruby" str = %q(Programming language "#{ruby}") puts str # => Programming language "#{ruby}"
2.%、%W、%w
配列を作る。配列の要素はスペース区切りで指定する。
式の展開はされない。
array = %w(one two three four) p array # => ["one", "two", "three", "four"]
ruby = 'Ruby' PYTHON = 'Python' array = %W(#{ruby} #{PYTHON} PHP) p array # => ["Ruby", "Python", "PHP"]
3.%i、 %I
要素がシンボルの配列を作る
array = %i(Ruby Python PHP) p array # => [:Ruby, :Python, :PHP]
ruby = 'Ruby' PYTHON = 'Python' array = %I(#{ruby} #{PYTHON} PHP) p array # => [:Ruby, :Python, :PHP]
%x
コマンド出力を行う。
res = %x(date) # dateコマンドの実行 puts res # => Sat Aug 23 23:27:01 JST 2014
5. %s
シンボル