Expresiones regulares·una línea que no contiene cierta palabra

una línea que no contiene cierta palabra

Coincide con una línea que no contiene cierta palabra. Está anclado en ambos extremos, así que debe coincidir la cadena entera. No tiene grupos de captura.

Patrón
/^(?!.*\btest\b).*$/
Alcance
la cadena entera
Grupos de captura
0
Lo que captura en el primer ejemplo
production code

Pruébalo

Escribe cualquier texto y se marcará lo que captura la expresión. Todo ocurre en tu navegador y no se envía a ninguna parte.

production code

1 coincidencia

Ejemplos que coinciden

  • production code
  • testing

Ejemplos que no coinciden

  • this is a test
  • test

Otras expresiones del grupo

Cómo leerlo

  • Con ^ y $ alrededor, debe coincidir la cadena entera; sin ellos, la coincidencia puede estar en cualquier parte. Ancla siempre lo que uses para validar.
  • Los paréntesis ( ) capturan lo que envuelven. Si solo necesitas agrupar, escribe (?: ) para que no se desplace la numeración.
  • Cada expresión de aquí se comprueba con sus ejemplos. Aun así, "parece un correo" y "es un buzón real" son cosas distintas.
  • Las repeticiones abiertas anidadas como (a+)+ pueden dispararse con ciertas entradas. Busca esa forma antes de pegar una expresión ajena.

Preguntas frecuentes

Q. ¿Cuál es la regex para una línea que no contiene cierta palabra?

^(?!.*\btest\b).*$.

Q. ¿Qué cadenas coinciden?

Un texto como production code coincide; uno como this is a test no.

Q. ¿Debe coincidir la cadena entera?

Sí. Va entre ^ y $, así que solo pasa una coincidencia completa.

Q. ¿Cómo uso lo capturado?

No hay grupos de captura, así que solo vuelve la coincidencia completa (match[0]). Envuelve entre paréntesis la parte que necesites.