我正在浏览有关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的行为相同,并且使用双引号引起来的字符串。如果我们可以使用%{}获得相同的输出,那么谁都知道这2的确切用途。
以下是有关它们的一些提示Ruby_Programming - The % Notation
:
%Q []-插值字符串(默认)
%q []-非插值字符串(\,[和]除外)
范例:
x = "hi"
p %Q[#{x} Ram!] #= > "hi Ram!"
p %q[#{x} Ram!] #= > "\#{x} Ram!"
p %Q[th\e] #= > "th\e"
p %q[th\e] #= > "th\\e" # notice the \\ with %q[]
另一个好的资源 Percent Strings
除了
%(...)
可以创建字符串之外,The%
还可以创建其他类型的对象。与字符串一样,大写字母允许插值和转义字符,而小写字母则禁用它们。
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句