概要
Rubyの文字列について説明します。
シングルクォートとシングルクォートの違い
シングルクォートの場合
エスケープ文字が使用可能
入力
puts("hoge\nhoge")
出力
hoge hoge
シングルクォートの場合
シングルクォートに対してのみエスケープが可能
入力
puts('hoge\nhoge\'')
出力
hoge\nhoge'
%Qと%q
%Qもしくは%qと区切り文字を使用して同様に文字列を出力することが可能。
区切り文字は各種括弧{},(),[]<>や英数字+スペース以外の文字でもよい。
(例えば、@や=など)
%Qはシングルクォーテーションとほぼ同じ機能でシングルクォーテーションに対するエスケープが不要
puts(%Q|hoge\nhoge|) puts(%|hoge\nhoge|) # Qは省略可能
%qはシングルクォーテーションとほぼ同じ機能でシングルクォーテーションに対するエスケープが不要
puts(%q|hoge\nhoge'|)