Как сделать замену только для первой группы regExp?

Здравствуйте!
block.html().replace(new RegExp(`>(${letter})<`), '<span class="sr">$1</span>');


Нужно чтобы замена происходила только контента тегов - это то, что между круглых скобочек.
636228285dd34525309685.png
Огромное спасибо!
  • Вопрос задан
  • 239 просмотров
Решения вопроса 2
Aetae
@Aetae Куратор тега JavaScript
Тлен
Во-первых: не работайте с html через регулярки.
Во-вторых: см. во-первых.
В-третьих: `(?<=>)(${letter})(?=<)`
Ответ написан
Комментировать
demon416nds
@demon416nds
Разработчик на чем попало
вот кривой код который делает почти то что нужно, дальше сам разбирайся
function addspan(word){
  let vari='';
let letters = word.split('');
  for(letter of letters) 
   vari += `<span class='cls'>${letter}<\/span>`;
  return vari;
  }  
  
  function textNodesUnder(node){
  var all = [];
  for (node=node.firstChild;node;node=node.nextSibling){
    if (node.nodeType==3) all.push(node);
    else all = all.concat(textNodesUnder(node));
  }
  return all;
}

nodes=textNodesUnder(document.querySelector('.block'));
nodes.forEach(node => {
tempnode=document.createElement("span");
tempnode.innerHTML=addspan(node.nodeValue);
node.parentElement.replaceChild(tempnode,node);
tempnode.outerHTML=tempnode.innerHTML;
});
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

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

Войти через центр авторизации
Похожие вопросы