Я пытаюсь удалить некоторые небезопасные символы из строки, но я считаю, что у меня проблема с моим объектом RegExp.
То, что я пытаюсь сделать ниже, - это если есть символы с кодированной длиной больше 3 символов, их следует заменить пробелом.
Так что, если закодированное значение %3D
, что является знаком =
, это нормально иметь в моей строке. Но если это ’
апостроф %E2%80%99
, его следует заменить пробелом.
val = "Angelina’s";
valEnc = encodeURIComponent(val);
for(var i = 0; i < val.length; i++){
var a = val.substr(i,1);
if(encodeURIComponent(a).length > 3){
console.log(a, encodeURIComponent(a));
var re = new RegExp(encodeURIComponent(a),"ig");
valEnc.replace(re," ");
};
};
console.log(decodeURIComponent(valEnc));
Этот код работает и регистрирует нежелательные символы, но не может заменить их пробелами. Что я делаю не так? Спасибо.