Empresas
Empregos
  • Sobre nós
  • Soluções
    • Publicação de vagas
      Publique sua vaga e receba candidatos qualificados em 48h.
    • Avaliações de candidatos
      Mais de 500 testes técnicos e psicológicos, mais anti-fraude.
    • Headhunting
      Busca executiva personalizada do início ao fim.
    • Folha de Pagamento + EOR
      Dispersão de folha e EOR em mais de 15 países da LATAM.
  • Preços
  • Empregos

0

135
Visualizações
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 Respostas
Responde à pergunta

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 Relatório

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 Relatório

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 Relatório
Responde à pergunta
Encontrar trabalhos remotos

Descubra a nova forma de encontrar um emprego!

melhores empregos
Principais categorias de trabalho
Empresas
Postar vaga Preços Comercial
Jurídico
Termos e Condições Política de privacidade
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomende algumas ofertas para mim
Preciso de ajuda