regex aspecto negativo alrededor con 2 partidos adyacentes
Debería ser una pregunta fácil de alguien:
Si ejecuto este JavaScript:
var regex = new RegExp("(?!cat)dog(?!cat)","g");
var text = "catdogcat catdogdog catdogdogcat".replace(regex,"000");
console.log(text);
Se trata de esto:
catdogcat cat000000 cat000dogcat
Pero pensé que debería salir esto:
catdogcat cat000000 cat000000cat
¿Por qué no está el segundo "perro" encatdogdogcat
Reemplazado con000
?
EDITAR: Quiero reemplazar "perro" siempre que no tenga gato en AMBOS lados. Encatdogdogcat
, AMBOS perros cumplen con este requisito y por lo tanto deben ser reemplazados. Obviamente no entiendo estas miradas negativas a mi alrededor ...