js код, который:
- находит только текст без тегов в html
- находит в этом тексте ip адреса
- выделяет красным цветом эти ip
[js]
// Функция для обработки текстового узла и выделения IP-адресов красным цветом
function processTextNode(node) {
const regex = /\b(?:\d{1,3}\.){3}\d{1,3}\b/g;
const replacedText = node.nodeValue.replace(regex, (match) => {
return `<span style="color: red;">${match}</span>`;
});
if (replacedText !== node.nodeValue) {
const wrapper = document.createElement(‘span’);
wrapper.innerHTML = replacedText;
node.parentNode.replaceChild(wrapper, node);
}
}
// Рекурсивная функция для прохода по всем элементам и их потомкам
function processElements(element) {
const childNodes = element.childNodes;
for (let i = childNodes.length — 1; i >= 0; i—) {
const node = childNodes[i];
if (node.nodeType === Node.TEXT_NODE) {
processTextNode(node);
} else if (node.nodeType === Node.ELEMENT_NODE) {
processElements(node);
}
}
}
// Вызов функции для обработки всех текстовых узлов внутри элемента <body>
processElements(document.body);
[/js]