Business
Jobs
  • About Us
  • Solutions
    • Job Postings
      Post your job and receive qualified candidates in 48h.
    • Candidate Assessments
      500+ technical and psychological tests, plus anti-fraud.
    • Headhunting
      Tailor-made executive search from start to finish.
    • Payroll + EOR
      Payroll dispersal and EOR across 15+ LATAM countries.
  • Pricing
  • Jobs

0

148
Views
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 answers
Answer question

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 Report

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 Report

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 Report
Answer question
Find remote jobs

Discover the new way to find a job!

Top jobs
Top job categories
Business
Post vacancy Pricing Sales
Legal
Terms and conditions Privacy policy
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Show me some job opportunities
There's an error!