0
Words
0
Characters
0
No spaces
0
Lines
0
Paragraphs
0
Sentences
0 min
Reading time
Input text
Converted output

Conversor de capitalização: UPPER, lower, Title, snake_case online

Cole o texto, clique em um estilo, copie o resultado. Nove estilos de capitalização, suporte completo a Unicode, nada sai do seu navegador.

O que é o conversor de capitalização?

Uma ferramenta gratuita, no navegador, que converte um bloco de texto entre nove estilos: UPPERCASE, lowercase, Title Case, Sentence case, snake_case, camelCase, PascalCase, kebab-case e CONSTANT_CASE. Cole uma vez, clique no estilo desejado, copie o resultado. Nada sai da sua máquina.

Pense nele como as funções UPPER, LOWER e PROPER do Excel, mais o menu "Alterar maiúsculas e minúsculas" do Microsoft Word, mais os estilos voltados ao programador para os quais você usaria lodash ou o pacote npm change-case. Uma única interface, sem instalação.

Por dentro, as conversões usam String.prototype.toLowerCase, toUpperCase e toLocaleLowerCase / toLocaleUpperCase para um dobramento sensível à locale (Turkish I com ponto, ß alemão, sigma final grego). Os estilos de identificador dividem nas fronteiras de palavra (_, -, espaços e transições de minúscula para maiúscula) antes de recapitalizar cada palavra.

Como as conversões funcionam de fato

Dois dos nove estilos são transformações puras de letra. UPPERCASE chama String.prototype.toLocaleUpperCase com a locale do seu navegador, e lowercase chama toLocaleLowerCase. As variantes locale-aware importam: a referência de toLocaleUpperCase no MDN documenta o caso turco: em tr-TR, o i minúsculo vira İ (com ponto) e o I maiúsculo vira ı (sem ponto). As versões não-locale erram em texto turco.

Title Case e Sentence case dão mais trabalho. Sentence case coloca tudo em minúscula e depois capitaliza a primeira letra de cada frase (separando em ., !, ?). Title Case capitaliza a primeira letra de cada palavra exceto artigos curtos, preposições e conjunções como a, an, the, and, or, of, in. A primeira e a última palavra do título sempre são capitalizadas. AP e Chicago discordam sobre quais preposições pular; escolhemos um padrão razoável e listamos no FAQ.

Os cinco estilos de identificador (snake_case, camelCase, PascalCase, kebab-case, CONSTANT_CASE) compartilham um normalizador. O texto é dividido em palavras por sublinhados, hifens, espaços, pontos ou uma transição de minúscula para maiúscula (assim userProfileName vira user, profile, name). Cada palavra vai para minúscula e é rejuntada com o separador e a regra de capitalização do destino. É a mesma abordagem do pacote change-case no npm.

Como converter capitalização em três passos

Um painel, um clique, um resultado. Sem cadastro e sem upload.

  1. 1

    Cole o texto

    Solte o texto no painel de entrada. Pode ser uma frase, uma coluna de cabeçalhos CSV, um identificador ou um parágrafo de várias linhas. O botão Sample preenche o painel com um exemplo curto se você quiser ver as conversões lado a lado primeiro.

  2. 2

    Clique em um botão de estilo

    Escolha um dos nove estilos: UPPERCASE, lowercase, Title Case, Sentence case, snake_case, camelCase, PascalCase, kebab-case ou CONSTANT_CASE. O resultado aparece imediatamente no painel de saída. A entrada original é preservada para você experimentar outro estilo sem precisar colar de novo.

  3. 3

    Copie o resultado

    Clique em Copy para colocar o texto convertido na sua área de transferência. Ou clique em Download para salvá-lo como arquivo .txt. Os dois botões executam localmente; nada é enviado.

Quando o conversor de capitalização é a ferramenta certa

Cabeçalhos CSV prontos para uma carga SQL

Você exportou uma planilha com cabeçalhos como First Name, Date Of Birth, Customer ID, e o Postgres precisa deles como first_name, date_of_birth, customer_id. Cole a linha de cabeçalho, clique em snake_case e você obtém uma versão limpa para identificadores que entra direto em um CREATE TABLE sem aspas.

Manchetes em slugs de URL

Um título de blog como "Why We Switched from MongoDB to Postgres" vira why-we-switched-from-mongodb-to-postgres em kebab-case, que é a convenção de URL recomendada pela documentação de estrutura de URLs do Google. Pontuação é removida, espaços viram hifens, capitalização é normalizada. Cole a manchete, clique em kebab-case, cole no seu CMS.

Renomear identificadores de Python para JavaScript

Você está movendo nomes de campos de resposta de um backend Python que retorna user_profile_name e created_at para um frontend TypeScript que prefere userProfileName e createdAt. Cole os identificadores em snake_case, clique em camelCase, e o divisor trata as fronteiras de sublinhado corretamente. O caminho inverso funciona da mesma forma.

Normalizar identificadores SQL de um esquema legado

Um esquema Oracle mais antigo tem identificadores em CONSTANT_CASE: USER_PROFILE_NAME, ORDER_LINE_ITEM_ID. A convenção do Postgres é minúsculas com sublinhados. Cole a lista de colunas, clique em snake_case, e você obtém uma versão amigável ao Postgres. O divisor respeita os sublinhados existentes para que identificadores com várias palavras permaneçam corretamente segmentados.

Aplicar Title Case a uma lista de títulos de livros ou músicas

Você reuniu uma lista de títulos com capitalização misturada: "the great gatsby", "TO KILL A MOCKINGBIRD", "Of mice And men". Cole, clique em Title Case, e você recebe títulos corretamente capitalizados, com artigos e preposições curtas em minúscula ("To Kill a Mockingbird"). Mais rápido do que ir linha por linha no menu "Alterar maiúsculas e minúsculas" do Word.

Reformatar uma resposta de e-mail toda em CAIXA ALTA

Alguém respondeu sua thread de suporte tudo em maiúsculas. Cole a mensagem, clique em Sentence case, e fica legível: primeira letra de cada frase em maiúscula, o resto em minúscula. Depois clique em Copy e responda com algo que um humano consiga ler sem desconforto.

Referência rápida dos estilos de capitalização

Um resumo curto dos nove estilos que esta ferramenta expõe, mais as armadilhas Unicode que vale a pena conhecer. Os exemplos usam a entrada <code>userProfileName</code> ou "the quick brown fox" quando faz sentido.

TopicWhat this tool does
UPPERCASECada letra em maiúscula. USERPROFILENAME, THE QUICK BROWN FOX. Apoiado em String.prototype.toLocaleUpperCase. Comum em palavras-chave SQL, no CSS text-transform: uppercase e em valores padrão de variáveis de ambiente em YAML.
lowercaseCada letra em minúscula. userprofilename, the quick brown fox. Apoiado em String.prototype.toLocaleLowerCase. Usado em endereços de e-mail, hostnames e chaves de busca insensíveis a maiúsculas.
Title CasePrimeira letra de cada palavra significativa em maiúscula; artigos curtos e preposições ficam em minúscula. "The Quick Brown Fox Jumps Over the Lazy Dog". A primeira e a última palavra do título sempre são capitalizadas. AP e Chicago divergem em preposições com cinco letras ou mais.
Sentence casePrimeira letra de cada frase em maiúscula; o resto em minúscula. "The quick brown fox jumps over the lazy dog." Divide em ., !, ?. Útil para limpar texto em CAIXA ALTA ou normalizar capitalização misturada.
snake_casePalavras unidas por sublinhados, tudo em minúscula. user_profile_name. Convenção Python para funções e variáveis (PEP 8). Convenção Postgres para identificadores. Comum em Ruby, Rust e identificadores SQL.
camelCasePalavras unidas sem separador; primeira palavra em minúscula, as demais capitalizadas. userProfileName. Convenção JavaScript e Java para variáveis e métodos. Usada em chaves de objetos JSON na maioria das APIs JS-nativas.
PascalCasePalavras unidas sem separador; cada palavra capitalizada incluindo a primeira. UserProfileName. Convenção para nomes de classe em Java, C#, Python, Rust e TypeScript. Às vezes chamada de UpperCamelCase.
kebab-casePalavras unidas por hifens, tudo em minúscula. user-profile-name. Convenção para seletores e propriedades CSS. Convenção de slugs de URL (preferida pelo Google em SEO). Convenção de atributos HTML pela spec, embora as propriedades do DOM sejam expostas em camelCase.
CONSTANT_CASEPalavras unidas por sublinhados, tudo em maiúscula. USER_PROFILE_NAME. Convenção para constantes em tempo de compilação em C, Java e JavaScript. Comum em variáveis de ambiente (DATABASE_URL, NODE_ENV) e palavras-chave SQL.
Armadilhas UnicodeTurkish I com/sem ponto (iİ, Iı), o ß alemão vira SS em maiúscula, o sigma final grego ς só aparece no fim de palavra. Sempre use métodos locale-aware nesses casos. Veja Caixa (tipografia) na Wikipédia para uma visão geral e Snake case / Camel case para o histórico dos identificadores.

Conversor de capitalização: perguntas frequentes

Suporta capitalização locale-aware para turco, alemão e grego?

Sim. UPPERCASE e lowercase usam String.prototype.toLocaleUpperCase e toLocaleLowerCase com a locale do seu navegador. Em turco, i vira İ (com ponto) e I vira ı (sem ponto), conforme as regras Unicode do Unicode Technical Standard #21. O ß alemão permanece em minúscula e vira SS em maiúscula. O sigma final grego ς também é tratado corretamente.

Como o Title Case decide quais palavras pular?

Title Case mantém em minúscula artigos curtos, preposições e conjunções: a, an, the, and, or, but, nor, for, of, in, on, at, to, by, as, vs. A primeira e a última palavra do título sempre são capitalizadas. AP e Chicago divergem em casos limítrofes (Chicago capitaliza preposições com cinco letras ou mais; AP não). Usamos a lista curta no estilo AP por produzir resultados mais consistentes em entradas variadas.

Qual a diferença entre camelCase e PascalCase?

Os dois unem palavras sem separadores, mas diferem na primeira letra. camelCase mantém a primeira palavra em minúscula: userProfileName. PascalCase capitaliza todas as palavras incluindo a primeira: UserProfileName. A divisão depende da linguagem: Java usa camelCase para métodos e variáveis, PascalCase para classes; o PEP 8 do Python usa snake_case para funções e PascalCase para classes; o guia de estilo JavaScript do Google usa camelCase em tudo, exceto classes.

Posso converter identificadores entre convenções de nomenclatura?

Sim. Os cinco estilos de identificador (snake_case, camelCase, PascalCase, kebab-case, CONSTANT_CASE) usam o mesmo divisor de palavras, que quebra em sublinhados, hifens, espaços, pontos e transições de minúscula para maiúscula. Assim userProfileName, user_profile_name, user-profile-name e USER_PROFILE_NAME se dividem nas mesmas três palavras e convertem limpo entre os cinco estilos. É o mesmo comportamento do pacote change-case no npm e da família _.kebabCase do lodash.

Lida com Unicode e texto não-ASCII?

Sim. As conversões usam métodos de string locale-aware, então latim acentuado (é, ñ, ü), grego, cirílico, Turkish I com/sem ponto, ß alemão e a maioria dos demais sistemas de escrita são dobrados corretamente. Repare na diferença entre case folding (comparação de igualdade, p.ex. String.prototype.normalize + minúscula) e case mapping (exibição): aqui fazemos case mapping. Para comparação de igualdade entre locales, talvez você prefira localeCompare com { sensitivity: 'base' }.

Há limite de tamanho na entrada?

Até alguns MB roda sem problema, em bem menos de um segundo. Acima de 10 MB o navegador começa a sentir, porque renderizar de novo o painel de saída em strings longas é caro, não porque a conversão em si seja lenta. Para arquivos maiores, use uma CLI: tr '[:upper:]' '[:lower:]' no bash, str.upper() / str.lower() / str.title() em Python, ou a propriedade text-transform do CSS se for só exibição.

Privacidade e como isto funciona

Seu texto nunca sai do seu navegador. Cada conversão roda localmente na sua máquina, usando os métodos padrão de String embutidos no prototype String do JavaScript. Sem analytics sobre sua entrada, sem logs, sem ida e volta ao servidor. As regras Unicode que seguimos vêm do Unicode Technical Standard #21 (Case Mappings), o mesmo padrão que os próprios motores de navegador implementam.