Используйте регулярное выражение и метод замены строки, чтобы заменить символ (ы) в строке.Он возвращает новую строку после процесса.
let str = 'Every next purchase provides you with additional %@ days';
let regex = /%@/gi;
console.log(str.replace(regex, 'yourvalue'));
Это зависит от того, как вы его замените, вы можете использовать циклический переход и заменять значениями массивов с одинаковыми значениями (не с уникальными), опять же, это зависит от того, что выпытаемся достичь.
const str = 'Every next purchase provides you with additional %@ days %@';
const array = ['value1', 'value2'];
const count = (str.match(/%@/gi) || []).length;
const regex = /%@/;
let newString;
for (let i = 0; i < count; i++) {
newString = i === 0 ? str.replace(regex, array[i]) : newString.replace(regex, array[i]);
alert(newString);
}
Относительно substring()
: метод извлекает символы из строки между двумя SPECIFIC индексами.Поскольку вы получаете данные с сервера, и я считаю, что это динамические данные, и индексы этих символов могут изменяться, поэтому использование substring()
может не помочь.