не знаю почему у вас не работает этот код.
по крайней мере на простейших страницах он срабатывает.
вот, мой пример рабочей страницы
<html>
<head>
<script type="text/javascript">
window.onload=function(){
document.body.innerHTML = document.body.innerHTML.replace(/AzriMan/g, 'AndryMan');
}
</script>
</head>
<body>
qwe<br/>
azriMan<br/>
qwe<br/>
<table border="1">
<tr>
<td>AzriMan</td><td>AzriMa_n</td>
</tr>
<tr>
<td>AzriM_an</td><td>AzriMa_n</td>
</tr>
</table>
AzriMan<br/>
</body>
</html>
я заменил 'AzriMan' на /AzriMan/g для того, чтобы все вхождения заменялись.без этого тоже работает, но заменяет только первую строку.
с целью разъяснения этой функциипочитайте статью про
регулярные выражения
вот еще одна вариация кода по замене, более сложная.
window.onload=function(){
all_elements=document.getElementsByTagName('*');
for(i=0,s=all_elements.length;i<s;i++)
if(all_elements[i].tagName!="SCRIPT")
for(j=0,s_=all_elements[i].childNodes.length;j<s_;j++)
if(all_elements[i].childNodes[j].nodeType==3)
all_elements[i].childNodes[j].textContent=all_elements[i].childNodes[j].textContent.replace(/AzriMan/g, 'AndryMan');
}
менее компактно.
возмжно более медлено.хотя не факт.
возможно быстрее даже на больших документах.
во всяком случае в этом коде не происходит перерисовки всего дерева, как в предыдущем коде.
в общем, потестите.
Код можно изменять и дополнять разными способами, от разных аспектов вашей задачи.можно сделать рекурсивно(навряд ли код выиграет от этого.скорее проиграет по скорости).
сожно ввести больше тегов-исключений.
ну, да я думаю вы сами дальше разберетесь.
у вас есть на руках два работающих куска кода.дерзайте