Ruby 单引号字符串的不一致转义行为
在以下示例中,单引号字符串的转义规则看起来不一致: Ruby转义单引号字符串的确切规则是什么Ruby 单引号字符串的不一致转义行为,ruby,string,escaping,Ruby,String,Escaping,在以下示例中,单引号字符串的转义规则看起来不一致: Ruby转义单引号字符串的确切规则是什么 p str1 = 'a\b\c' #=> "a\\b\\c" looks fine, I know single quotes don't do escaping p str2 = 'a\\b\\c' #=> "a\\b\\c" hmm? It actually escapes # Trying double quotes p str3 = "a\b\c" #=> Error, \
p str1 = 'a\b\c'
#=> "a\\b\\c" looks fine, I know single quotes don't do escaping
p str2 = 'a\\b\\c'
#=> "a\\b\\c" hmm? It actually escapes
# Trying double quotes
p str3 = "a\b\c"
#=> Error, \c isn't valid
p str4 = "a\\b\\c"
#=> "a\\b\\c"
p str1 == str4, str2 == str4
# true, true
单引号字符串仅支持两个转义序列:
\'
–单引号\\
–单反斜杠除了这两个转义序列外,单引号之间的所有内容都按字面处理 资料来源: