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

303
Views
Encuentre una cadena que contenga de 1 a 4 letras mayúsculas y de 0 a 3 dígitos (código de Visual Studio, javascript regex)

De las líneas en un archivo me gustaría encontrar aquellas que

  • las líneas comienzan con un año YYYY ^(202\d) por ejemplo 2022 o 2023
  • seguido de al menos 1 y hasta 4 letras mayúsculas ABCD [AZ]{1,4} o hasta 3 números \d{1,3} y al menos una letra [AZ]{1} por ejemplo ABCD o A123 o 1A23 o 123A
  • seguido de A o R

Ejemplos

 YYYYxxxxA // find rows that match 2022xxxxA 2022A150A // relevant matches 2022B260A // " 20223A70A // " 20224B84A // " 20224B A // not relevant due to spaces \s\s 20221234A // not relevant due to 4 digits and no letter

En visual-studio-code probé javascript regex (ver mi demo@regex101.com )

Estas dos expresiones regulares parecen funcionar

 2022(\d\D\w\w|\D\d\w\w|\d\d\D\w|\d\d\w\D|\D\D\D\D)A // or ^(202\d)(\d{0,3}[AZ]{1,4}|[AZ]{1,4}\d{1,3})([\dA-Z]{0,4})A

Explicación de regex101.com

  • al comienzo de una línea
  • El primer grupo de captura (202\d) coincide con 202 literalmente y \d coincide con un dígito (equivalente a [0-9])
  • Segundo grupo de captura (\d{0,3}[AZ]{1,4}|[AZ]{1,4}\d{1,3})
  • 2 Group 1st Alternative \d coincide con un dígito (equivalente a [0-9]){0,3} coincide con el token anterior entre 0 y 3 veces
  • 2 Group 1st Alternative coincide con un solo carácter presente en la lista a continuación [AZ] {1,4} coincide con el token anterior entre 1 y 4 veces
  • las otras alternativas | son una variación de la primera

Demostración en regex101.com

Pregunta

Me gustaría saber si hay una mejor opción que

 ^(202\d)(\d{0,3}[AZ]{1,4}|[AZ]{1,4}\d{1,3})([\dA-Z]{0,4})A

para (xxxx) debe contener al menos 1 mayúscula y no más de 3 dígitos?

Prueba con mi demo

about 4 years ago · Juan Pablo Isaza
1 answers
Answer question

0

Su expresión regular final también coincidirá con las dos líneas a continuación, porque permite hasta 3+4+4 caracteres para esa segunda parte, y también solo 1 letra:

 2022999BBBB9999A 2022BA

Para la parte que debe tener 4 alfanuméricos, incluyendo al menos una letra, podrías expresar esa condición de la siguiente manera:

  • hacer coincidir exactamente cuatro caracteres que son dígitos o letras mayúsculas
  • requieren que uno de ellos sea una letra mayúscula, utilizando la búsqueda anticipada

Como esto:

^(202\d)(?=.{0,3}[AZ])([\dA-Z]{4})A

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!