Inverter texto
“Hello, world!” volta como “!dlrow ,olleH”: o último caractere vira o primeiro, e emojis, bandeiras e letras acentuadas continuam inteiros em vez de virar símbolos quebrados. Útil para charadas, aulas e verificações rápidas. 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
- Hello, world!
- Resultado
- !dlrow ,olleH
- Texto
- !dlrow ,olleH
- Texto original
- Hello, world!
- Comprimento
- 13
Inverter uma string parece trivial até aparecer Unicode multibyte: um loop ingênuo sobre índices UTF-16 pode partir emoji, marcas combinantes e pares substitutos, gerando saída corrompida que falha checagens visuais e testes automatizados.
O que significa inverter texto e por que o Unicode importa
Inverter texto significa que o último caractere da entrada vira o primeiro da saída, o penúltimo vira o segundo, e assim por diante até o primeiro caractere da entrada terminar no fim do resultado. Para ASCII simples como Olá a saída é álO e toda linguagem de programação concorda. O caso difícil é texto do mundo real: bandeiras, emoji de família unidos com zero-width joiners, letras acentuadas escritas como base mais marca combinante, e símbolos fora do Plano Multilíngue Básico.
Indexar uma string JavaScript por code unit ou dividir com string vazia pode cortar um único emoji em substitutos órfãos que aparecem como caracteres de substituição. Por isso esta capacidade segmenta primeiro, depois inverte a lista de segmentos e então junta. Quando o runtime expõe Intl.Segmenter com granularidade de grafema, cada caractere percebido pelo usuário permanece inteiro na inversão.
Quando Segmenter não está disponível, Array.from percorre code points para que pares substitutos ainda invertam intactos. Prefira esta calculadora de inverter texto quando a intenção de busca for inverter uma string, inverter a ordem dos caracteres ou inverter texto online com suporte a emoji. Não use quando só precisar inverter a ordem das palavras em uma frase mantendo cada palavra legível da esquerda para a direita — essa é outra promessa de produto.
Casos de uso
Puzzles e demos educacionais
Professores e criadores de jogos invertem frases e strings seguras com emoji para puzzles de aula, aquecimentos CTF e demos interativas sem corromper caracteres multibyte.
Espelhamento de UI e pipelines de conteúdo
Ferramentas de produto geram rótulos espelhados ou variantes semente a partir do texto do usuário com contrato pré-pago estável para servidores e SDKs.
Perguntas frequentes
Como inverto texto com esta ferramenta?
O campo result da resposta é a saída invertida; original ecoa sua entrada para comparação.
Inverter texto trata emoji e Unicode corretamente?
Sim. O motor segmenta clusters de grafema quando Intl.Segmenter está disponível; caso contrário usa code points via Array.from, para que emoji multibyte não se partam em substitutos quebrados.
A ferramenta de inverter texto é grátis?
A ferramenta do navegador roda grátis no seu dispositivo.
Isso inverte palavras ou caracteres?
Inverte o fluxo completo de caracteres (grafemas/code points), não só a ordem das palavras. Olá mundo vira odnum álO, não mundo Olá.
Para que serve inverter um texto?
Principalmente para charadas, jogos e demonstrações em sala de aula, como desafios de decifrar mensagens. Também é um jeito rápido de conferir se um texto com emojis passa por um processo sem estragar.
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/reverse \
-H "Authorization: Bearer $KIT_KEY" \
-H "Content-Type: application/json" \
-d '{"text":"Hello, world!"}'const res = await fetch("https://api.kit.forhosting.com/str/reverse", {
method: "POST",
headers: {
"Authorization": `Bearer ${process.env.KIT_KEY}`,
"Content-Type": "application/json"
},
body: JSON.stringify({
"text": "Hello, world!"
})
});
const { task_id } = await res.json();import os, requests
res = requests.post(
"https://api.kit.forhosting.com/str/reverse",
headers={"Authorization": f"Bearer {os.environ['KIT_KEY']}"},
json={
"text": "Hello, world!"
},
)
task_id = res.json()["task_id"]<?php
$res = file_get_contents("https://api.kit.forhosting.com/str/reverse", false, stream_context_create([
"http" => [
"method" => "POST",
"header" => "Authorization: Bearer " . getenv("KIT_KEY") . "\r\nContent-Type: application/json",
"content" => '{"text":"Hello, world!"}',
],
]));
$task = json_decode($res, true);body := bytes.NewBufferString(`{"text":"Hello, world!"}`)
req, _ := http.NewRequest("POST", "https://api.kit.forhosting.com/str/reverse", 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": "Hello, world!"
}Exemplo de resposta
{
"task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
"type": "str.reverse",
"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
Esta ferramenta de inverter texto aceita entrada não vazia, segmenta a string em caracteres percebidos pelo usuário quando Intl.Segmenter está disponível (e em code points Unicode caso contrário), inverte essa sequência e devolve um contrato JSON estável com a string invertida, o eco do original, o comprimento, a contagem de caracteres e rótulos de método. Strings vazias ou só de espaços falham com invalid_input para que pipelines nunca gravem resultados em branco por acidente.
Contrato de entrada, rejeição de vazio e leitura da resposta
O texto de origem segue as mesmas regras de retenção de outros itens parse do KIT. Envie um corpo JSON com o campo string obrigatório text definido como a frase não vazia que você quer inverter. Os aliases input, value, s e content são aceitos quando clientes antigos ou geradores de formulário usam esses nomes. Text ausente, valor que não é string, string vazia ou só com espaços disparam invalid_input com mensagem que nomeia o problema, e essas falhas não são cobradas na API pré-paga. Use só result quando precisar apenas da string invertida; use original e result juntos quando uma UI de demo precisar mostrar antes e depois; use char_count quando estiver verificando que símbolos de várias code units contaram como uma unidade. Mantenha cargas em tamanhos de frase e mensagem adequados a um isolado Worker, não dumps de vários megabytes; este produto é utilitário de texto, não processador em massa de arquivos.
Uso da API, preços, fluxos e limites práticos
Chame a ferramenta gratuita no navegador para inverter texto em puzzles, demos de aula, checagens de cópia e experimentos rápidos seguros com emoji sem instalar utilitário de desktop nem escrever one-liner em cada linguagem. Não espere inversão linguística da ordem das palavras para exibição em linguagem natural, reordenação do algoritmo bidirecional para layout RTL completo nem colação por locale — esses são problemas separados. Autores que publicam SDKs podem documentar text como único campo obrigatório e mostrar um exemplo de sucesso com vários caracteres mais um erro de string vazia para integradores verem os dois lados do contrato. Use a API pré-paga do KIT quando um backend de jogo, pipeline de conteúdo, harness de QA ou cliente móvel precisar da mesma transformação sob saldo a US$ 0,002 por item bem-sucedido; falhas de validação nunca consomem saldo após o motor rejeitar a requisição. Um fluxo típico pega um slogan ou frase semente, executa este endpoint e exibe a string espelhada para uma UI divertida ou um passo de verificação de que a inversão de ida e volta restaura o original. Combine este endpoint com ferramentas de encode ou hash quando o próximo passo for Base64 ou checksum da forma invertida, mas mantenha inverter em sua própria landing para não misturar a intenção de busca de inverter texto com encoding.
Casos de integração
QA e fixtures de regressão Unicode
Harnesses de teste fixam saídas golden invertidas para que refatorações que partam pares substitutos ou marcas combinantes falhem imediatamente na integração contínua.
Perguntas técnicas
O que acontece se text estiver vazio?
Strings vazias e só de espaços falham com invalid_input e não são cobradas.