Заменить слово целиком в тексте если оно содержит определенную часть

Например есть строка: 'Сделал работу сегодня чтобы завтра не работать' нужно сделать replace так чтобы слова начинающиеся на 'работ' заменились полностью а не только часть.

const v = 'работ'
'Сделал работу сегодня чтобы завтра не работать'.replace(new RegExp(`${v}(\s?)`, 'gi'), `<b>${v}</b>`)

получается:

"Сделал работу сегодня чтобы завтра не работать"

должно:

"Сделал работу сегодня чтобы завтра не работать"


Ответы (1 шт):

Автор решения: Arseni Mourzenko
let v = 'работ';
'Сделал работу сегодня чтобы завтра не работать'.replace(
    new RegExp(`${v}\\S*`, 'gi'),
    '<b>$&</b>');

Ещё как вариант, можете разбивать текст на слова, а после этого для каждого слова проверять, на что оно начинается.

→ Ссылка