вокруг некоторых определенных c слов, которые я хочу поставить тег. Для этого я сейчас использую $("body").html().replace(myRegExp, myNewString);
Теперь волнуюсь, а что, если оно может соответствовать, например, имени класса? Я хочу только изменить «текст». Я читал о том, что можно go через текстовые узлы DOM, но там можно изменить только один текстовый узел, но не вставлять html, как тег span. А что, если я хочу поместить тег span вокруг нескольких слов? Так как я могу убедиться, что замена - это только замена текста, а не html, js, css, ...
Редактировать: вот пример. У меня в качестве содержимого страницы:
This is a test! <br>
<span class="test">The span has as classname test </span>
Затем я хочу, например, заменить слово test:
var regex = new RegExp("\\b" + word + "\\b", "g");
var replaced = $("body").html().replace(regex, '<b class="testClass">' + word + '</b>');
$("body").html(replaced);
Вывод:
This is a test!
test">The span has as classname test
Имя класса «Тест» также заменен:
<span class="<b class=" testclass"="">test">The span has as classname <b class="testClass">test</b> </span>