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

233
Visualizações
Insertar espacio después de una cantidad específica de números dentro de una cadena

Obtuve una matriz con muchas cadenas mal formateadas. Necesito agregar un espacio a la cadena después de los primeros tres números dentro de String con JavaScript . El principal problema es que no tengo un índice específico para insertar el espacio porque la cantidad de caracteres antes de los primeros tres números varía o no existe en absoluto.

Entrada de ejemplo:

 [ "A12345678", "ABC12345678", "1234 56 7 8", "12 345 67 8", "AB12345678BVC", ]

Salida deseada:

 [ "A123 45678", "ABC123 45678", "123 45678", "123 45678", "AB123 45678BVC", ]

Pensé que podría resolverse replaceAll los espacios para obtener una cadena continua y luego hacer un for loop sobre cada carácter por cadena y luego resolver esto escribiendo marcando los caracteres para agregar un espacio en la posición deseada, pero obtengo una gran cantidad de estas matrices desde el backend y puede terminar en un rendimiento terrible de esta manera.

La otra idea que tengo es resolver esto usando Regex como en este ejemplo de un tutorial, pero desafortunadamente apesto escribiendo Regex. Estaría muy agradecido si alguien me puede ayudar con esto.

about 4 years ago · Juan Pablo Isaza
2 Respostas
Responde à pergunta

0

Puede usar String.replace() junto con Array.map() para agregar el espacio requerido. En primer lugar, eliminamos todos los espacios de cada cadena, luego agregamos el espacio en la posición requerida.

 const input = [ "A12345678", "ABC12345678", "1234 56 7 8", "12 345 67 8", "AB12345678BVC", ] const result = input.map(v => v.replace(/\s/g,'').replace(/(\d{3})/, '$1 ')); console.log(result)
 .as-console-wrapper { max-height: 100% !important; top: 0; }

about 4 years ago · Juan Pablo Isaza Relatório

0

Usar

 const texts = [ "A12345678", "ABC12345678", "1234 56 7 8", "12 345 67 8", "AB12345678BVC" ] for (const text of texts) { console.log(text, '->', text.replace(/\s+/g,'').replace(/\d{3}(?!$)/, '$& ')); }

Es decir

  • Eliminar los espacios en blanco primero, luego
  • Agregue un espacio después de los primeros 3 dígitos si estos dígitos no están al final de la cadena.
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