2017-02-09 11 views
0

javascript regexの代わりにフロントバックスラッシュを使用します。例えばJavascriptの正規表現は、バックスラッシュを付けずに引用符を置き換えます。

'"'.replace(xxx, yyy); -> '\"' 
'\"'.replace(xxx, yyy); -> '\"' 
'\\"'.replace(xxx, yyy); -> '\\\"' 

現在、私は次のことをやったが、私はより良い方法があると信じています。

content = content.replace(/"/g, '\\"'); 
content = content.replace(/\\\\"/g, '\\"'); 
+0

の下に使用することができますか? – MaxZoom

+1

私は "なぜこれが必要なのですか?" "あなたは実際に何をしようとしていますか?"これは非常に奇妙なことであり、脆弱性の匂いがしたい。 –

答えて

1

私はあなたがバックスラッシュ文字を進めていないだけで、それらの引用符を交換したいと思い、質問を理解しています。このために、あなたが入力し、期待された結果の一例を与えることができregex

var str = 'this"quote but not \"this one'; 
 
console.log(str.replace(/(([^\\])(["]))/g, "$2\\$3"));

0

あなたは'\"'ですべて'"'を交換したい場合は、

その後、

var replacedString = 'string with " " quotes'.replace(/"/g,'\\\"');

は動作するはずです。

1
JSON.stringify('abc " def') 

戻り

"abc \" \" def" 
関連する問題