Задать вопрос
  • Как сделать регистрозависимые замены в строке?

    0xD34F
    @0xD34F Куратор тега JavaScript
    Метод replace умеет принимать функцию, которая получает найденную подстроку и должна вернуть замену:

    m => `<span style="background: red;">${m}</span>`

    Или, можно в строке замены указать, куда следует подставить заменяемую подстроку:

    '<span style="background: red;">$&</span>'

    Ерунду с интервалом уберите. Замену производите у текстового содержимого вместо разметки. Т.е.:

    const p = document.querySelector('.resultParagraph');
    
    document.querySelector('.input').addEventListener('keypress', e => {
      if (e.key === 'Enter') {
        const regex = RegExp(e.target.value, 'gmi');
        const replacement = '<span style="background: red;">$&</span>';
        p.innerHTML = p.textContent.replace(regex, replacement);
      }
    });
    Ответ написан
    3 комментария