Remover caracteres invisíveis
Encontra e remove caracteres invisíveis online. Deteta espaços de largura zero, espaços inseparáveis, hífenes condicionais e controlos bidi (Trojan Source).
Caracteres invisíveis encontrados
| Ponto de código | Sigla | Nome | Tipo | Quantidade | Removido |
|---|
Entrada destacada
Só os primeiros 20 000 caracteres são destacados.
Como remover caracteres invisíveis
- Cola o teu texto na caixa de entrada. É analisado assim que o colas.
- Lê o resultado: uma tabela lista todos os caracteres ocultos encontrados, com o ponto de código, a sigla, o nome Unicode, o tipo e a quantidade. A Entrada destacada mostra onde está cada um, como uma pequena etiqueta colorida, por exemplo
ZWSPouNBSP. - Em Caracteres a remover, deixa marcados os tipos que queres apagar. Selecionar todos / nenhum liga ou desliga todos de uma vez.
- Deixa marcada a opção Substituir os espaços inseparáveis e especiais por um espaço normal para que «10 000» mantenha o espaço em vez de passar a «10000».
- Copia o texto limpo da caixa de resultado. Remover caracteres invisíveis atualiza o resultado.
O que esta ferramenta deteta
| Tipo | Caracteres | De onde vêm |
|---|---|---|
| Caracteres de largura zero | ZWSP U+200B, ZWNJ U+200C, ZWJ U+200D, WJ U+2060, BOM U+FEFF | Páginas web, processadores de texto, texto copiado de PDF ou de aplicações de chat, ficheiros guardados com marca de ordem de bytes |
| Espaços inseparáveis e especiais | NBSP U+00A0, NBSP estreito U+202F, espaços fino, eme, ene, de algarismo e ideográfico, separadores de linha e de parágrafo | em HTML, tipografia francesa, Word, Option+Espaço no macOS |
| Hífenes condicionais | SHY U+00AD | Sugestões de hifenização de processadores de texto e sites |
| Controlos bidirecionais | LRM, RLM, ALM, LRE–RLO (U+202A–U+202E), LRI–PDI (U+2066–U+2069) | Texto que mistura árabe, hebraico e latim, e código malicioso |
| Caracteres de controlo | NUL, ESC, mudança de página, DEL, controlos C1 | Saída de terminal, ficheiros antigos, codificações estragadas |
| Outros caracteres de formatação | Caracteres de etiqueta, operadores matemáticos invisíveis, preenchimentos Hangul, braille em branco, qualquer outro carácter Unicode «Cf» | Marcas de água ocultas, nomes de utilizador «em branco», origens obscuras |
| Seletores de variação | VS1–VS256 | Estilos de emoji, variantes CJK e um truque de esteganografia que esconde dados depois de um emoji |
As tabulações, mudanças de linha e retornos de carro são caracteres normais e nunca são tocados. Os seletores de variação não vêm selecionados por omissão, porque normalmente são legítimos.
Porque é que os caracteres invisíveis causam problemas
Parecem não ser nada, mas os computadores veem-nos. Um espaço de largura zero dentro de uma palavra estraga a pesquisa e o corretor ortográfico, uma marca de ordem de bytes no início de um ficheiro CSV corrompe o nome da primeira coluna, um espaço inseparável faz dois valores parecerem diferentes numa pesquisa de folha de cálculo ou num campo de palavra-passe, e um hífen condicional pode partir um URL. Código com um U+FEFF ou um U+00A0 perdido pode recusar-se a compilar com um erro incompreensível.
Os caracteres invisíveis também podem ser deliberados: alguns são usados para marcar texto copiado, de modo a que uma fuga de informação possa ser rastreada até à origem.
Trojan Source e controlos bidi
Os controlos bidirecionais dizem ao motor de apresentação para dispor parte de uma linha da direita para a esquerda. Dentro de código-fonte, podem fazer o código parecer diferente daquilo que o compilador realmente executa, um ataque publicado em 2021 com o nome «Trojan Source» (CVE-2021-42574). Quando a ferramenta encontra um destes caracteres, mostra um aviso. Um texto legítimo em árabe ou hebraico pode usar as marcas LRM e RLM, mas controlos de incorporação, substituição e isolamento num ficheiro de código ou de configuração são um sinal de alarme.
Mantém o que precisas
- Manter os caracteres de junção e os seletores dentro dos emojis protege os caracteres de junção de largura zero e os seletores de variação que formam emojis como 👨👩👧 ou ❤️. Desmarca a opção para os removeres também; o emoji da família passa então a três pessoas separadas.
- O persa, o hindi e outras escritas usam o ZWNJ e o ZWJ para controlar a forma como as letras se ligam. Para esses textos, desmarca Caracteres de largura zero (ZWSP, ZWNJ, ZWJ, WJ, BOM).
- A tipografia francesa usa espaços inseparáveis estreitos antes de ; : ! ? e dentro das aspas « ». Desmarca o tipo dos espaços para os manteres. Em textos portugueses, o espaço inseparável aparece sobretudo como separador de milhares («10 000»).
Perguntas frequentes
Como sei se o meu texto tem espaços de largura zero?
Cola-o aqui. Se a tabela ficar vazia e o estado indicar «Nenhum carácter invisível encontrado.», não há nenhum.
Remover os espaços inseparáveis vai colar as minhas palavras?
Não com a definição por omissão: os espaços inseparáveis e especiais são substituídos por um espaço normal. Só desmarca a opção de substituição se quiseres que sejam apagados.
A ferramenta remove os espaços normais, as tabulações ou as quebras de linha?
Não. Só os tipos de caracteres listados acima são afetados.
É seguro colar texto confidencial?
Sim. A análise e a limpeza correm no teu navegador; nada é enviado nem guardado.
Porque é que o meu ficheiro limpo continua a mostrar um carácter estranho no início?
Se o ficheiro foi guardado com uma codificação diferente de UTF-8, o problema pode ser a codificação e não um carácter invisível. Volta a guardar o ficheiro em UTF-8 e analisa-o de novo.
Ferramentas relacionadas
- Remover quebras de linha e espaços a mais Remove quebras de linha e espaços a mais de texto copiado de um PDF ou e-mail. Mantém parágrafos e listas, junta palavras hifenizadas e tira citações.
- Localizar e substituir Localiza e substitui palavras ou padrões em qualquer texto, com opções de maiúsculas, palavras inteiras e expressões regulares, contagem e pré-visualização.
- Corretor de tipografia francesa Corrige automaticamente a pontuação de textos em francês: espaços inseparáveis antes de : ; ! ?, aspas « », reticências e apóstrofos curvos.
- Contador de caracteres Contador de caracteres online e gratuito com limites em tempo real para o X, SMS, meta title, meta description e Instagram. Um emoji conta como um.