Empresas
Empleos
  • Sobre nosotros
  • Soluciones
    • Publicación de vacantes
      Publica tu vacante y recibe candidatos calificados en 48h.
    • Evaluación de candidatos
      500+ pruebas técnicas y psicológicas, más anti-fraude.
    • Headhunting
      Búsqueda ejecutiva a la medida de principio a fin.
    • Nómina + EOR
      Dispersión de nómina y EOR en más de 15 países de LATAM.
  • Precios
  • Empleos

0

129
Vistas
Usando la búsqueda anticipada, cómo asegurarse de que se incluyan al menos 4 caracteres alfanuméricos + guiones bajos

Estoy tratando de asegurarme de que se incluyan al menos 4 caracteres alfanuméricos en la entrada, y que también se permitan guiones bajos.

El tutorial de expresiones regulares está un poco por encima de mi cabeza porque habla de aserciones y éxito/fracaso si hay una coincidencia.

 ^\w*(?=[a-zA-Z0-9]{4})$

mi entendimiento:

\w --> alfanumérico + guión bajo

* --> coincide con el token anterior entre cero y un número ilimitado de veces (esto significa que puede ser cualquier carácter que sea alfanumérico/guión bajo, ¿correcto?)

(?=[a-zA-Z0-9]{4}) --> ve por delante de los caracteres anteriores, y si incluyen al menos 4 caracteres alfanuméricos, entonces estoy bien.

Obviamente, estoy equivocado en esto, porque regex101 no me muestra coincidencias.

about 4 years ago · Juan Pablo Isaza
3 Respuestas
Responde la pregunta

0

Desea 4 o más caracteres alfanuméricos, rodeados por cualquier número de guiones bajos (use ^ y $ para asegurarse de que coincida con la entrada completa):

 ^(_*[a-zA-Z0-9]_*){4,}$
about 4 years ago · Juan Pablo Isaza Denunciar

0

Sugiero usar grupos atómicos (?>...) , consulte el tutorial de expresiones regulares para obtener más detalles

 ^(?>_*[a-zA-Z0-9]_*){4,}$

para asegurar 4 o más fragmentos cada uno de ellos conteniendo letra o dígito.

Editar: si regex no es compatible con atomic, intentemos usar solo grupos:

 ^(?:_*[A-Za-z0-9]_*){4,}$
about 4 years ago · Juan Pablo Isaza Denunciar

0

Su patrón ^\w*(?=[a-zA-Z0-9]{4})$ no coincide porque:

  • ^\w* Coincide con los caracteres de palabra opcionales desde el principio de la cadena, y si solo hay caracteres de palabra, coincidirá hasta el final de la cadena
  • (?=[a-zA-Z0-9]{4}) La anticipación positiva es verdadera, si puede afirmar 4 caracteres alfanuméricos consecutivos a la derecha de la posición actual. El \w* permite retroceder, y puede retroceder 4 posiciones para que la afirmación sea verdadera.
  • Pero el $ afirma el final de la cadena, que no puede coincidir ya que la posición se movió 4 pasos a la izquierda para cumplir con la afirmación anterior de búsqueda anticipada positiva.

Usando la búsqueda anticipada, lo que puede hacer es afirmar 4 caracteres alfanuméricos precedidos por guiones bajos opcionales.

Si la afirmación es verdadera, haga coincidir 1 o más caracteres de palabra.

 ^(?=(?:_*[a-zA-Z0-9]){4})\w+$

El patrón coincide:

  • ^ Comienzo de cadena
  • (?= Lookahead positivo, afirmar lo que está a la derecha es
    • (?:_*[a-zA-Z0-9]){4} Repetir 4 veces haciendo coincidir _ opcional seguido de un carácter alfanumérico
  • ) Cerrar la búsqueda anticipada
  • \w+ Coincide con 1+ caracteres de palabra (que incluye el _ )
  • $ Fin de la cadena

Demostración de expresiones regulares

about 4 years ago · Juan Pablo Isaza Denunciar
Responde la pregunta
Encuentra empleos remotos

¡Descubre la nueva forma de encontrar empleo!

Top de empleos
Top categorías de empleo
Empresas
Publicar vacante Precios Comercial
Legal
Términos y condiciones Política de privacidad
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomiéndame algunas ofertas
Necesito ayuda