我正在浏览关于 ruby 的在线教程,发现这个“通用分隔字符串”,
%{a word} # => "a word"
%Q{a word} # => "a word"
%q{a word} # equivalent to single quoted version.
所以我在 irb 上试了一下,这就是我所看到的
2.0.0p247 :025 > %Q(hi)
=> "hi"
2.0.0p247 :026 > %q(the)
=> "the"
2.0.0p247 :027 > %q(th"e)
=> "th\"e"
2.0.0p247 :028 > %q(th'e)
=> "th'e"
2.0.0p247 :029 > %Q(h'i)
=> "h'i"
2.0.0p247 :030 > %Q(h"i)
=> "h\"i"
%q 和 %Q 的行为相同,并且将字符串放在双引号中。如果我们可以使用 %{} 来获得相同的输出,那么任何人都知道这两个到底有什么用途。