function replaceText(node, replacer) {
if (node.nodeType === Node.ELEMENT_NODE) {
node.childNodes.forEach(n => replaceText(n, replacer));
} else if (node.nodeType === Node.TEXT_NODE) {
node.nodeValue = replacer(node.nodeValue);
}
}
replaceText(document.body, str => str.replace(/\d/g, 'hello, world!!'));
или
function replaceText(node, replacer) {
const iter = document.createNodeIterator(node, NodeFilter.SHOW_TEXT);
for (let node = null; node = iter.nextNode(); ) {
node.nodeValue = replacer(node.nodeValue);
}
}