JavaScriptの正規表現を使用してファイル名から不正な文字を置き換えようとしていますが、IE 11では '正規表現の構文エラー' ChromeとEdgeで同じコードが正常に動作します。Javascript正規表現がIEで失敗しましたが、ChromeとEdgeで動作しています
String.prototype.replaceAll = function (search, replacement) {
var target = this;
return target.replace(search, replacement);
};
var filename = 'test+&+this+again.2016.txt';
filename = filename.replaceAll(new RegExp(/[^a-zA-Z0-9_\-&.]+/, 'g'), '_');
所望の出力は、任意の助けをいただければ幸い
filename = 'test_&_this_again.2016.txt';
あります。
おかげ
あなたの 'replaceAll'関数の目的は、単に' replace'を標準と呼んでいるからですか? – sp00m
FWIW: '/ [^ a-zA-Z0-9 _ \ - &。] + /'は '/ [^ \ w \ - &。] + /'と同じです。 –
私は、 .replaceAll'をプロダクションコード:-O – andlrc