文字列"this is a \#test"
を取得し、それを Python シェルにドロップすると、 が返さ'this is a \\#test'
れます。これは、私が探している動作です。しかし、それを Ruby シェルにドロップする"this is a #test"
と、バックスラッシュが存在したことを示すものは返されません。Ruby の文字列を Python のように、つまり # 記号を自動的にエスケープせずに動作させるにはどうすればよいですか?
1983 次
2 に答える
2
エスケープ シーケンスを解釈したくない場合は、一重引用符を使用します。
[1] pry(main)> 'this is a \#test'
=> "this is a \\#test"
単一引用符も文字列補間を行わないため、両方が必要な場合は、スラッシュを手動でエスケープできます。
[1] pry(main)> t = "test" ; "this is a \\##{t}"
=> "this is a \\#test"
于 2013-10-06T15:23:44.287 に答える
2
二重引用符の代わりに単一引用符を使用してください。
'this is a \#test'
バックスラッシュが含まれます。Ruby では"
文字列のみが置換とエスケープを行います。文字列'
のみエスケープ\\
\
于 2013-10-06T15:23:55.840 に答える