Texto

Ordene linhas de texto em ordem alfabética ou numérica

Cole uma lista, escolha uma ordem e a versão ordenada aparece abaixo. A ordem natural coloca item2 antes de item10, coisa que a ordenação alfabética simples, notoriamente, não faz.

A ordem por ponto de código coloca todas as maiúsculas antes de todas as minúsculas.

Opções
0Linhas de entrada
0Linhas de saída
0Vazias descartadas
0Duplicadas

Por que a ordenação óbvia erra

Toda linguagem de programação traz uma ordenação que compara strings pelo código dos seus caracteres. Em JavaScript isso significa que ['Zebra', 'apple'].sort() devolve ['Zebra', 'apple'], porque o Z maiúsculo é o ponto de código 90 e o a minúsculo é o 97. Toda letra maiúscula vem antes de qualquer minúscula. Ninguém que esteja colocando uma lista de nomes em ordem alfabética quer isso.

Com os acentos é pior. Na ordem por ponto de código, é cai depois de z, então uma lista de palavras em português ou em francês volta com um final de aparência aleatória. E se um acento estiver guardado como uma letra simples mais uma marca combinante em vez de um único caractere, a mesma palavra pode ser ordenada em dois lugares diferentes dependendo de onde foi digitada.

A opção Suas configurações de idioma usa a ordenação do navegador (a collation), que sabe que a e A andam juntos, que o é fica ao lado do e, e em que ordem a sua região espera o alfabeto. Ponto de código dá a comparação crua, que é o que você quer quando precisa reproduzir o que um programa, um índice de banco de dados ou um arquivo já ordenado vai fazer.

A ordenação depende de quem está olhando

Esta é a ressalva honesta. A ordenação que respeita o idioma respeita mesmo: em sueco, å, ä e ö vêm depois do z, enquanto o alemão as trata como variantes de a e o e as arquiva ali. O estoniano coloca o z entre o s e o t. A ferramenta usa o idioma configurado no seu navegador, então a mesma lista ordenada por duas pessoas diferentes pode sair em duas ordens diferentes. Se a ordem precisa ser idêntica em todo lugar, use o ponto de código.

A ordem natural e onde ela deixa de ser óbvia

A ordenação alfabética simples lê os dígitos como caracteres, então file10 vem antes de file2 — 1 é menor que 2 e a comparação para por aí. A ordem natural lê as sequências de dígitos como números, que é o que uma pessoa espera de uma lista de nomes de arquivo, capítulos ou números de chamado.

Não é uma solução universal. Números de versão a quebram: pelas regras naturais, 1.10 é comparado como um seguido de dez, o que está certo para versões e errado para decimais, onde 1.10 é igual a 1.1. Datas escritas como 3/4/2025 são ordenadas pelo dia ou pelo mês conforme o que vier primeiro na string, e nunca pela data real. Zeros à esquerda quase sempre funcionam, mas 007 e 7 comparam como iguais, então a ordem relativa entre eles depende de qual você digitou primeiro.

Esse último ponto vale em geral: a ordenação do JavaScript é obrigatoriamente estável desde o ES2019, então itens que a comparação considera iguais mantêm a ordem relativa original. Ordenar uma lista duas vezes por duas chaves diferentes funciona, portanto, do jeito que você espera.

As outras três ordens

Comprimento da linha ordena pela quantidade de caracteres, com os empates resolvidos em ordem alfabética. Caracteres, não largura visual: um emoji ou um caractere chinês conta como uma ou duas unidades dependendo de como está codificado, então essa é uma medida aproximada para qualquer coisa que não seja texto latino simples.

O número contido na linha extrai o primeiro número que encontra em qualquer parte de cada linha e ordena por esse valor. Isso coloca Capítulo 9 antes de Capítulo 10, e dá conta de 12 Acacia Avenue. Também significa que Capítulo 2 de 10 é ordenado pelo 2, o que costuma estar certo, e que Rota 66 revisitada em 1998 é ordenada pelo 66, o que talvez não esteja. As linhas sem número nenhum ficam no fim, na ordem original, em vez de fingir que valem zero.

Embaralhamento aleatório usa um embaralhamento de Fisher-Yates movido por Math.random. Isso serve bem para montar uma ordem de apresentação ou misturar cartões de estudo. Não é aleatoriedade criptográfica, então não use para sortear um prêmio nem para nada em que alguém tenha motivo para trapacear.

O que ela não consegue fazer

Ela ordena linhas, e só linhas. Um CSV cujos campos contenham quebras de linha entre aspas será dividido nos lugares errados, e ordenar pela terceira coluna não é algo que uma ferramenta baseada em linhas possa oferecer — isso pede uma planilha. Não há chave de ordenação secundária, não há agrupamento e não há como ordenar estruturas indentadas, em que afastar uma linha das que estão indentadas sob ela destrói a estrutura. Tudo roda na thread principal da sua aba, então uma lista com centenas de milhares de linhas é ordenada instantaneamente e uma com milhões vai travar a página enquanto trabalha.

Perguntas frequentes

Por que minha lista fica com as maiúsculas primeiro?

Você está com Ordem das letras em Ponto de código, que compara os códigos crus dos caracteres, e toda maiúscula tem um código menor que qualquer minúscula. Mude para "Suas configurações de idioma" para a ordem alfabética normal, ou desmarque Diferenciar maiúsculas de minúsculas.

Como faço file2 vir antes de file10?

Escolha "Alfabética, com os números em ordem". Ela lê as sequências de dígitos como números, e não como caracteres. A alfabética simples compara o 1 do 10 com o 2 e para por aí, e é por isso que coloca file10 primeiro.

Dá para ordenar pela segunda coluna de um CSV?

Não. Esta ferramenta trabalha com linhas inteiras, então só consegue ordenar pelo que vem primeiro. Cole os dados em uma planilha para ordenar por coluna, e saiba que um CSV com quebras de linha dentro de campos entre aspas será dividido de forma errada aqui.

Duas pessoas ordenando a mesma lista terão o mesmo resultado?

Não necessariamente, com a ordenação por idioma. O sueco coloca å, ä e ö depois do z enquanto o alemão as arquiva com a e o, e a ferramenta segue o idioma do navegador de cada visitante. Use a ordem por ponto de código quando o resultado precisar ser idêntico em todo lugar.

O embaralhamento é mesmo aleatório?

É um embaralhamento de Fisher-Yates de verdade, então toda ordem é igualmente provável até onde a fonte de aleatoriedade permite. Essa fonte é o Math.random, que não é criptograficamente seguro. Bom o bastante para uma playlist, não para um sorteio.

Última atualização 19 de setembro de 2026