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(/это Блок ((?:[А-ЯЁ],? )+)/);
  alert(matchBlocks);
  let matchBlock = matchBlocks[1];
  if (matchBlock) {
		let blocks = matchBlock.split(',');
    let replaceBlocks = blocks.map(function(block){
    	let b = block.trim();
      return `<a href="#${b}">${b}</a> `;
    });
    textBlock.innerHTML = str.replace(matchBlocks[1], replaceBlocks.join(', '));
  }
});