Neste artigo você vai aprender a criar uma expressão regular para remover espaços duplos em JavaScript puro, de maneira fácil

Expressão regular para remover espaços duplos capa

Conteúdo também disponível em vídeo:

Fala programador(a), beleza? Bora aprender mais sobre regex e também remoção de espaços em branco desnecessários no texto!

Primeiro vamos a definição do problema: recebemos uma string com espaços em branco desnecessários e queremos formatá-la corretamente

Veja o exemplo:

var str = "Esta string   tem alguns    espaços desnecessários!     ";
var strCorreta = "Esta string tem alguns espaços desnecessários!";

A variável str tem espaços a mais do que precisamos, e a strCorreta é o nosso objetivo

Podemos então utilizar a função replace do JavaScript, que aceitam uma regex como parâmetro

Vamos utilizar a seguinte regex: /( )+/g

Os ( ) vão resgatar todos os espaços vazios da string, e o + vai pegar todas as próximas ocorrências desta mesma string

E também como segundo argumento de replace, vamos inserir um espaço vazio em string

Isso fará com que todas ocorrências da expressão regular sejam substituídas pelo único espaço, que é nosso segundo argumento

Veja o código de exemplo:

var str = "Esta        string       tem    alguns espaços     desnecessários!";
console.log(str.replace(/( )+/g, " ")); // "Esta string tem alguns espaços desnecessários!"

E pronto, o problema está resolvido! =)

Você pode melhorar ainda mais o código e criar uma função para utilizar em todas as strings que precisem desta manipulação

Aí você evita repetição de código desnecessária em outras partes do seu software

Conclusão

Neste artigo vimos como criar uma expressão regular para remover espaços duplos

Utilizamos a função replace para trocar todas as ocorrências da regex por um único espaço em branco

Deixando assim a string padronizada como é requerido pela regra de negócios do nosso programa

Confira também nosso catálogo de cursos gratuitos, com aulas semanais no YouTube

 

Subscribe
Notify of
guest

0 Comentários
Inline Feedbacks
View all comments