JSFiddle - React, Tailwind, and code Playground
HTML
<div id="textoid">
Hola, este texto es una prueba de otro texto, <span class="clase1"> la prueba consiste </span>
en reemplazar <span class="clase2">este texto.</span> Por otro texto.
</div>
<div id="rst"></div>
JavaScript
window.onload = function() {
var eDiv = document.getElementById('textoid');
var texto = '';
var clase = '';
for (var i = 0; i < eDiv.childNodes.length; i++) {
// span
if (eDiv.childNodes[i].nodeName === 'SPAN') {
clase = eDiv.childNodes[i].className;
cadena = eDiv.childNodes[i].innerHTML;
texto += '<span class=' + clase + '>' + cadena + '</span>';
}
// Lo que no sea span
if (eDiv.childNodes[i].nodeName !== 'SPAN') {
cadena = eDiv.childNodes[i].nodeValue;
texto += cadena.replace(/texto/, '<span class="clase3">texto</span>');
}
}
document.getElementById("rst").innerHTML = texto;
}