JSFiddle - React, Tailwind, and code Playground
by Nick Sdk
HTML
<div cols="40" rows="5" id="text">Привет, это Блок А, Б, В, Д и дальше другой текст</div>
<hr>
<input type="button" value="заменить на ссылки" id="replace_blocks">
JavaScript
let btn = document.querySelector('#replace_blocks');
btn.addEventListener('click', function(e){
let textBlock = document.querySelector('#text');
let str = textBlock.textContent;
let matchBlocks = str.match(/это Блок ((?:[А-ЯЁ],? )+)/);
let matchBlock = matchBlocks[1];
if (matchBlock) {
let blocks = matchBlock.split(',');
let replaceBlocks = blocks.map(function(b){
return `<a href="#${b}">${b}</a>`;
});
textBlock.innerHTML = str.replace(matchBlock, replaceBlocks.join(', '));
}
});