martes, 8 de septiembre de 2015

Reemplazar todas las coincidencias de una palabra completa con Javascript


A continuación podréis ver un ejemplo práctico de como reemplazar todas las palabras completas de un texto con Javascript, para tal tarea crearemos una expresión regular con la palabra a buscar entre los caracteres especiales \b (Word Boundary), esto nos permitirá limitar la búsqueda a sólo palabras completas, en este caso, si por ejemplo queremos buscar la palabra "ola" en un texto, "hola", "caracola", ... serán ignoradas y es requisito que la palabra sea "ola" exclusivamente. A la expresión regular también le incluiremos las condiciones "i" e "g", "i" para ignorar mayúsculas y minúsculas, por ejemplo, "oLa", "Ola", "olA", .. son válidos y "g" para buscar-indexar todas las coincidencias.


<script>
	window.onload = function(){
		texto = document.getElementById("texto").innerHTML;
		//la condición "i" en la expresión regular ignora mayúsculas y minúsculas
		//la condición "g" en la expresión regular busca todas las coincidencias
		buscar = /\bzapato\b/gi;
		reemplazar = "Javascript";
		document.getElementById("resultado").innerHTML = texto.replace(buscar, reemplazar);
	};
</script>

<h3>Reemplazar todas las coincidencias de una palabra completa con Javascript</h3>
<div id="texto">
	zapato gazapato mato Zapato gato arrebato pato gato zaPato zapatón
</div>
<h3>El Resultado</h3>
<div id="resultado"></div>