https://developer.mozilla.org/ru/docs/Web/JavaScri...
const advert = {
rooms: 3,
guests: 5,
}
let str = "4 комнаты для 7 гостей"
str = str.replace(/^(\d+)(.*?)(\d+)(.*)$/, `${advert.rooms}$2${advert.guests}$4`)
// ^ - Начало строки, $ - конец строки
// \d - цифра в регулярный выражениях.
// точка - любой символ, + - одно и более повторений, * - ноль и более повторений
// круглые скобки - выделение в группу
// левая часть в replace - регулярное выражение, которое разбирает строку на части, правая часть - на что заменить части
// $2 и $4 - части исходной строки, попавшие в группу с соответствующим индексом. $1 - первое число, $2 - всё что между первым и вторым числом, $3 - второе число, $4 - всё что после второго числа
// str = "3 комнаты для 5 гостей"