Texto

Limpador de espaços e caracteres invisíveis

O texto que sai de um PDF, de um documento do Word ou de uma página web quase sempre carrega espaçamento que você não vê. Esta ferramenta remove os espaços a mais, as tabulações soltas e os caracteres Unicode invisíveis, e lista o que encontrou para você saber o que havia ali de verdade.

Uma linha conta como em branco quando não tem nada além de espaços.

As tabulações coladas entre colunas costumam ser o que quebra um CSV.

Aparar as linhas e juntar os espaços destroem a indentação. Desligue os dois para código, Markdown e tabelas de largura fixa.

0Caracteres de entrada
0Caracteres de saída
0Removidos
0Linhas de saída

O espaço em branco que você não vê

Um espaço nem sempre é um espaço. O Unicode define mais de uma dúzia de caracteres que aparecem em branco, e o texto copiado de um PDF, de um documento do Word ou de uma página web com estilos está cheio deles. Todos sobrevivem a um localizar e substituir do espaço normal, porque nenhum deles é um espaço normal.

O estrago tem sempre o mesmo formato: duas strings que parecem idênticas não coincidem. Uma busca em uma planilha devolve erro em um nome que você vê que está certo. Uma chave JSON não resolve. Uma senha colada é recusada. Uma importação de CSV deixa um espaço inicial em todos os campos de uma coluna.

Os finais de linha, e por que nenhuma ferramenta com uma caixa de texto consegue corrigi-los

O Windows termina uma linha com dois caracteres: um retorno de carro e depois um avanço de linha. Unix e macOS usam só o avanço de linha. O Mac OS clássico, anterior ao OS X, usava só o retorno de carro. Misturá-los é o que faz um arquivo abrir como uma única linha enorme em um editor e mostrar um ^M no fim de cada linha em outro, e o que faz um diff dizer que todas as linhas mudaram quando só uma mudou.

A parte que vale saber: esta ferramenta não ajuda nisso, e nenhuma outra página com uma caixa de texto ajuda. O HTML normaliza o conteúdo de um textarea para avanços de linha simples, então, quando um script lê o que você colou, os retornos de carro já se foram. Não sobra nada para contar nem nada para relatar. Os finais de linha são um problema do arquivo, então corrija no nível do arquivo: na configuração de fim de linha do seu editor, com dos2unix ou com a opção de conversão do próprio git.

Por que juntar os espaços às vezes é um erro

Duas das opções daqui são destrutivas de um jeito que fica óbvio depois:

A regra prática: use isto em texto corrido. Para código, desligue o aparo das linhas e a junção de espaços, deixe ligada a remoção de caracteres invisíveis e deixe o resto com o seu formatador.

Remover caracteres invisíveis pode quebrar emojis

Um dos caracteres do conjunto invisível é o U+200D, o unificador de largura zero, e ele faz um trabalho de verdade. Um único emoji de programador é uma pessoa, um unificador e um notebook. Tire o unificador e você fica com dois emojis separados em vez de um. Os emojis de família se desmontam do mesmo jeito. Se o seu texto tem emojis e eles importam, desligue essa opção e limpe só os espaços.

O que esta ferramenta não vai resolver

Ela não lê intenção. Um espaço não separável entre um número e sua unidade, ou dentro de um nome, é tipografia deliberada: está ali para impedir que uma quebra de linha parta "10 km" ao meio. Esta ferramenta o substitui por um espaço comum junto com todos os acidentais. Se você escreve com cuidado, compare o antes e o depois em vez de confiar na saída.

Ela também não mexe no outro problema de diferença invisível: os homóglifos. Um а cirílico e um a latino são caracteres diferentes que aparecem idênticos na tela, e nenhuma limpeza de espaços vai fazer com que coincidam. Mesmo sintoma, causa diferente, e vale descartar isso quando duas strings continuam sem coincidir depois de uma limpeza.

As aspas curvas, os travessões e os caracteres de reticências ficam exatamente como estão, porque em geral estão corretos. E tudo aqui roda de forma síncrona na página, então colar vários megabytes congela a aba por um instante enquanto o trabalho acontece. Para arquivos desse tamanho, um editor de texto com busca por expressões regulares é a ferramenta certa.

Perguntas frequentes

Como removo espaços duplos de um texto?

Deixe "Juntar espaços repetidos" marcado e cole o texto. Cada sequência de dois ou mais espaços vira um só. Se você também quer sumir com os espaços do começo e do fim de cada linha, deixe "Aparar cada linha" ligado também.

O que é um espaço não separável e por que ele quebra as coisas?

É o U+00A0, um espaço que impede a linha de quebrar naquele ponto. Ele parece exatamente um espaço normal, mas é um caractere diferente, então buscas exatas, validação de formulário e comparações de string tratam os dois como diferentes. É por isso que uma planilha pode não achar um nome que você vê que está certo.

Isto remove as quebras de linha por completo?

Sozinho, não. Coloque as linhas em branco em "Remover todas" e toda linha vazia some, mas as quebras de linha de verdade entre os blocos de texto ficam. Para juntar tudo em um parágrafo só seria preciso remover também as quebras de linha, algo que esta ferramenta deixa de propósito sem mexer para a sua estrutura sobreviver.

É seguro rodar isto em código-fonte?

Só com o aparo das linhas e a junção de espaços desligados, já que a indentação é sintaxe em Python, YAML e Makefiles. Remover caracteres invisíveis é seguro e realmente útil em código, porque um espaço de largura zero colado em um arquivo-fonte produz um erro impossível de enxergar.

Meu texto é enviado para algum lugar?

Não. A limpeza acontece nesta aba com JavaScript comum. Nada é enviado para um servidor e nada é armazenado, então fechar a página descarta o que você colou.

Última atualização 19 de setembro de 2026