Задать вопрос
@Andy_Francev
Frontend Developer

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

Добрый день!
Есть строка:
Что-то.<p><strong>#Первый текст</strong></p>Что-то.<p><strong>#Второй текст</strong></p>Что-то.

Я хочу заменить в ней все пары тегов "p" и "strong" на "h3". Пытаюсь сделать это с помощью регулярного выражения:
const regexp = /(<p><strong>)(#)([\s\S]+)(<\/strong><\/p>)/g
const res = strSrc.replaceAll(regexp, '<h3>$3</h3>')

Но он меняет только самый первый и самый последний теги, оставляя всё остальное неизменным.
63451953a8785484035452.png

Подскажите пожалуйста, что я делаю не так?
  • Вопрос задан
  • 91 просмотр
Подписаться 1 Простой Комментировать
Помогут разобраться в теме Все курсы
  • Нетология
    Веб-разработчик с нуля: профессия с выбором специализации
    14 месяцев
    Далее
  • Академия Эдюсон
    Fullstack-разработчик на JavaScript + ИИ
    11 месяцев
    Далее
  • ProductStar × РБК
    Профессия: Инженер по тестированию + ИИ
    6 месяцев
    Далее
Решения вопроса 1
v3shin
@v3shin
Веб-шаман
Используйте non-greedy regexp:
/(<p><strong>)(#)(.*?)(<\/strong><\/p>)/g
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы