Listo (Ctrl + Enter para ejecutar) Bootcamp Fullstack »
app.js
Tab = 4 espacios
1
// 1. El peligro de olvidar las anclas de inicio (^) y fin ($)
const validadorPinInseguro = /\d{4}/;
const validadorPinSeguro   = /^\d{4}$/;

const intentoAtaque = "PIN: 1234; DROP TABLE usuarios;";

console.log("--- 1. Validación Estricta con ^ y $ ---");
console.log("¿Pasa validador inseguro?", validadorPinInseguro.test(intentoAtaque)); // true (¡Peligro!)
console.log("¿Pasa validador seguro?  ", validadorPinSeguro.test(intentoAtaque));   // false (Correcto)

// 2. Aislamiento de palabras exactas con \b
console.log("\n--- 2. Búsqueda con Límites de Palabra (\\b) ---");
const lenguajes = "Java, JavaScript, TypeScript, JavaEE, Python";

const regexSinLimites = /Java/g;
const regexConLimites = /\bJava\b/g;

console.log("Coincidencias sin \\b (captura prefijos indeseados):");
console.log(lenguajes.match(regexSinLimites)); // ["Java", "Java", "Java"]

console.log("\nCoincidencias con \\b (solo la tecnología exacta):");
console.log(lenguajes.match(regexConLimites)); // ["Java"]

// 3. Reemplazo seguro de palabras clave
const textoArticulo = "El gato persa y el gato montés jugaban con el pescador.";
const textoModificado = textoArticulo.replace(/\bgato\b/g, "felino");
console.log("\n--- 3. Sustitución Segura ---");
console.log(textoModificado);
Haz clic para editar este código
Vista Previa
Consola Virtual JavaScript