Dev Tools

Ordenar linhas de texto

Ordene linhas alfabeticamente, com opções de maiúsculas e trim na comparação.

Ordenar linhas de texto

Como usar Ordenar linhas de texto

Ordenar uma lista de texto parece simples até o momento em que você se pergunta: café vem antes ou depois de caro? Em português, a resposta depende das regras de colação do locale — e elas são mais complicadas do que parecem. A especificação Unicode inclui o DUCET (Default Unicode Collation Element Table), uma tabela de mais de 7.000 entradas que define o peso de cada caractere para fins de ordenação em múltiplos idiomas.

O problema prático surge ao ordenar strings com acentos ou caracteres especiais. A ordenação lexicográfica pura por código Unicode coloca o é depois do z, o que não faz sentido em nenhum idioma humano. A solução correta é usar localeCompare com o locale e as opções de sensibilidade adequados. Na web, a Intl.Collator API padronizada pelo ECMAScript cuida disso — e faz a diferença entre uma lista que parece certa para o usuário e uma que parece quebrada.

Os algoritmos de ordenação têm uma história rica. A bubble sort é a mais famosa para fins didáticos e a menos usada em produção. O quicksort, proposto por Tony Hoare em 1959, dominou décadas por sua performance média de O(n log n). O timsort, criado por Tim Peters em 2002 para o Python e depois adotado pelo Java e pelo motor V8 do JavaScript, combina merge sort com insertion sort e aproveita sequências já ordenadas nos dados — uma genialidade prática. A propriedade de estabilidade — linhas com o mesmo valor mantendo a ordem relativa original — importa quando se ordena por múltiplos critérios em passagens separadas.

Entrada

banana
apple
cherry → apple
banana
cherry

Perguntas frequentes

Para que serve esta ferramenta?

Ela roda 100% no seu navegador: útil para validar, formatar ou converter dados no dia a dia de desenvolvimento.

Meus dados são enviados a algum servidor?

O processamento é feito localmente via JavaScript. Não armazenamos o conteúdo que você cola nas caixas de texto.

Posso usar em produção ou para dados reais?

Use por sua conta e risco. Para segredos (senhas, tokens), prefira ambientes controlados e políticas da sua empresa. E lembre sempre de revisar os conteúdos gerados. Nunca confie cegamente nas coisas que vê na internet.

Continue nas Dev Tools

Ferramentas relacionadas para acelerar tarefas comuns de desenvolvimento.