文字列内の特定の文字をエスケープしようとしています。特に回したいのは
abc/def.ghi
の中へabc\/def\.ghi
次の構文を使用しようとしました。
1.9.3p125 :076 > "abc/def.ghi".gsub(/([\/.])/, '\\\1')
=> "abc\\1def\\1ghi"
うーん。これは、キャプチャの置換が機能しなかったかのように動作します。それでも、私がこれを試したとき:
1.9.3p125 :075 > "abc/def.ghi".gsub(/([\/.])/, '\1')
=> "abc/def.ghi"
... 代わりに動作するようになりましたが、もちろん、私のプレフィックスはその一部ではありませんでした。
このようなことを行うための正しい構文は何ですか?