これはよくある質問ですが、信頼できない正規表現に頼らないと答えを見つけることができないようです。
基本的\302\240
に、文字列に a または類似の組み合わせがある場合は、実際の文字に置き換えたいと思います。
これにはPLrubyを使用しているため、警告が表示されます。
obj = {"a"=>"some string with special chars"}
warn obj.inspect
NOTICE: {"Outputs"=>["a\302\240b"]} <- chars are escaped
warn "\302\240"
NOTICE: <-- there is a non breaking space here, like I want
warn "#{json.inspect}"
NOTICE: {"Outputs"=>["a\302\240"b]} <- chars are escaped
したがって、これらは文字列リテラルを使用するとデコードできますが、「#{x}」形式では \xxx プレースホルダーが文字にデコードされません。
中央のコマンドが生成するのと同じ文字列をどのように割り当てますか?
ルビーのバージョン: 1.8.5