Ordenar caracteres de um texto
“cabana” vira “aaabcn”: os 6 caracteres alinhados em ordem Unicode, com repetições. Espaços, sinais e emojis também ficam e são ordenados, então dois anagramas exatos sempre dão o mesmo resultado. Grátis no seu navegador.
- Grátis
- Funciona no seu navegador
- Sem cadastro
- Seus dados não saem do seu aparelho
Executar grátis
Exemplo resolvido
- Texto
- cabana
- Texto
- aaabcn
- Caracteres
- a, a, a, b, c, n
- Quantidade
- 6
- Original
- cabana
Ordenar caracteres transforma um texto em uma visão organizada de cada letra, número, espaço, sinal, símbolo e emoji. As repetições permanecem, portanto o resultado ajuda você a comparar anagramas, examinar a composição exata de uma frase ou preparar pistas de cifra. Sempre que o ambiente permite, a ferramenta mantém juntos os grafemas Unicode percebidos e depois os ordena pelas sequências de pontos de código. O processo é determinístico, diferencia maiúsculas e não remove espaços silenciosamente.
O que a ordenação de caracteres revela
Ordenar caracteres elimina a distração das posições originais, mas preserva o conteúdo exato. Se duas palavras forem anagramas rigorosos, os resultados ordenados coincidirão porque ambas contêm os mesmos caracteres nas mesmas quantidades. A visão também revela espaço extra, pontuação repetida, dígito ausente ou diferença de caixa difícil de perceber no texto comum.
Esta capacidade inclui tudo, não apenas letras. Espaços geralmente aparecem primeiro pela ordem Unicode, seguidos por sinais, números, letras latinas maiúsculas e minúsculas e outros sistemas de escrita. A posição vem dos pontos de código, não de um dicionário ou idioma.
Caracteres repetidos nunca são deduplicados. A resposta fornece o texto ordenado unido e uma lista dos caracteres, permitindo que você confira ou conte os itens sem dividir a string novamente. O texto original também volta para que interfaces e registros apresentem uma comparação clara entre antes e depois.
Como os caracteres Unicode são tratados
Texto moderno não pode ser dividido com segurança por unidades UTF-16. Muitos emojis ocupam pares substitutos, letras acentuadas podem combinar uma base e marcas, e certos emojis unem vários pontos de código. Uma divisão ingênua quebra esses símbolos e distorce a contagem.
Este ordenador usa segmentação de grafemas quando Intl.Segmenter está disponível, mantendo símbolos percebidos inteiros antes da ordenação. Sem esse recurso padrão, usa iteração por pontos de código, que ainda preserva pares substitutos. Em seguida compara numericamente as sequências de cada caractere, da esquerda para a direita.
Isso evita colação dependente de localidade e cria uma regra repetível para letras, sinais e emojis. A entrada não é normalizada: uma letra pré-composta pode diferir da mesma aparência produzida com marca combinante. Essa distinção é útil para investigar codificação.
Se você precisa de ordem alfabética linguística, escolha um ordenador com colação; esta ferramenta descreve deliberadamente a composição exata do texto.
Uso em anagramas, jogos e automação
Para verificar um anagrama exato, envie cada candidato separadamente e compare os campos de texto retornados. Primeiro decida se espaços, pontuação, caixa e acentos devem importar. O serviço preserva todos eles; para regras mais flexíveis, pré-processe os dois textos da mesma forma antes de ordenar.
Manter essa política fora da operação evita transformações ocultas. Ferramentas de cifra e jogos podem usar a lista de caracteres para exibir um inventário, localizar repetições ou criar dicas sem implementar outro separador Unicode. Fluxos de qualidade podem ordenar identificadores curtos e revelar diferenças invisíveis.
O algoritmo não usa rede, modelo, aleatoriedade nem relógio, portanto entradas iguais sempre produzem saídas iguais. O campo text é obrigatório e deve ser uma string não vazia; texto somente com espaços é aceito.
Casos de uso
Verificar anagramas exatos
Ordene duas palavras ou frases preparadas e compare os resultados para confirmar quantidades idênticas de cada caractere.
Criar cifras e jogos de palavras
Transforme uma pista em inventário ordenado que exponha duplicatas e símbolos sem revelar a sequência original.
Inspecionar a composição de tokens
Encontre diferenças sutis em espaços, pontuação, caixa, acentos ou símbolos repetidos em identificadores e testes.
Perguntas frequentes
Qual ordem é usada?
A ferramenta usa sequências ascendentes de pontos de código Unicode, não ordem alfabética de dicionário ou localidade.
Espaços e pontuação são removidos?
Não. Todos os caracteres são preservados, inclusive espaços, sinais, símbolos e repetições.
Posso verificar anagramas?
Sim. Aplique o mesmo pré-processamento às duas frases, ordene cada uma e compare os valores de text.
Os emojis permanecem inteiros?
A segmentação de grafemas Unicode é usada quando disponível; a alternativa percorre pontos de código sem quebrar pares substitutos.
Por que ç e as letras acentuadas ficam depois do z?
Porque a ordem segue o número Unicode de cada caractere, e não a do dicionário. As letras latinas básicas vêm primeiro, então ç, ã ou é aparecem depois do z. As maiúsculas também vêm antes das minúsculas.
Ferramentas relacionadas
Para desenvolvedores — acesso via API
Tudo nesta página está disponível via API. Esta seção é para equipes que querem integrar a ferramenta aos próprios sistemas; quem não precisa disso pode simplesmente usar a ferramenta acima.
Endpoint
Autenticação por token Bearer. Um único POST coloca a tarefa na fila; o resultado chega por webhook ou link assinado.
Chame do seu código
curl -X POST https://api.kit.forhosting.com/str/sort-characters \
-H "Authorization: Bearer $KIT_KEY" \
-H "Content-Type: application/json" \
-d '{"text":"cabana"}'const res = await fetch("https://api.kit.forhosting.com/str/sort-characters", {
method: "POST",
headers: {
"Authorization": `Bearer ${process.env.KIT_KEY}`,
"Content-Type": "application/json"
},
body: JSON.stringify({
"text": "cabana"
})
});
const { task_id } = await res.json();import os, requests
res = requests.post(
"https://api.kit.forhosting.com/str/sort-characters",
headers={"Authorization": f"Bearer {os.environ['KIT_KEY']}"},
json={
"text": "cabana"
},
)
task_id = res.json()["task_id"]<?php
$res = file_get_contents("https://api.kit.forhosting.com/str/sort-characters", false, stream_context_create([
"http" => [
"method" => "POST",
"header" => "Authorization: Bearer " . getenv("KIT_KEY") . "\r\nContent-Type: application/json",
"content" => '{"text":"cabana"}',
],
]));
$task = json_decode($res, true);body := bytes.NewBufferString(`{"text":"cabana"}`)
req, _ := http.NewRequest("POST", "https://api.kit.forhosting.com/str/sort-characters", body)
req.Header.Set("Authorization", "Bearer "+os.Getenv("KIT_KEY"))
req.Header.Set("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)Exemplo de requisição
{
"text": "cabana"
}Exemplo de resposta
{
"task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
"type": "str.sort_characters",
"status": "queued",
"_links": {
"result": "/tasks/tsk_…/result"
}
}A API é assíncrona: cada chamada devolve um task_id na hora. Se preferir polling, consulte o status a até 1 requisição por segundo.
Preço
Preço publicado, sem tokens nem créditos escondidos. Tarefa que falha não é cobrada.
Erros
| HTTP | Código | O que significa |
|---|---|---|
401 | unauthorized | Token ausente ou inválido. Confira o header Authorization. |
402 | insufficient_balance | Saldo insuficiente para esta tarefa. Faça uma recarga e tente de novo. |
404 | unknown_type | Esse tipo de tarefa não existe. Confira o campo type no catálogo. |
429 | rate_limited | Muitas requisições em pouco tempo. Espere um instante e tente de novo. |
Notas técnicas
Você pode executá-lo grátis no navegador ou chamar a API por US$ 0,002 por item.
Uso em anagramas, jogos e automação
Valores ausentes, vazios ou de outro tipo retornam invalid_input. O navegador é gratuito, enquanto a API automatizada custa US$ 0,002 por item concluído.
Perguntas técnicas
Quanto custa a chamada de API?
Cada item concluído custa US$ 0,002. A versão no navegador roda grátis no seu dispositivo.