Run on the rails!!

ruby on rails 学習に役立つ情報まとめ

Ruby %記法(パーセント記法) 5つ紹介

qiita.com

大文字と小文字の記法の違い

大文字→式展開できる

小文字→式展開されない

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

シンボル

sym = %s(Ruby) p sym # => :Ruby