2012-02-29 13 views
2

シングルクォート文字列のエスケープルールは、次の例では一貫していません。 正確には、シングルクォート文字列をエスケープするルールはありますか?一重引用符文字列の一貫性のないエスケープ動作

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 

答えて

3

シングル文字列が2つのだけのエスケープシーケンスをサポート引用さ: - 単一引用符
\\から
\'これら二つのエスケープシーケンスを除き、単一のバックスラッシュ
を、単一引用符の間に、他のすべては文字通り扱われます。

ソース:wikibooks

関連する問題