Conversor de maiúsculas e minúsculas

Converte texto entre camelCase, snake_case, kebab-case, PascalCase, CONSTANT_CASE e mais 8 formatos. Só no navegador.

text-regex

Conversor de caixa de texto

camelCase
PascalCase
snake_case
kebab-case
CONSTANT_CASE
dot.case
path/case
Sentence case
Capital Case
Train-Case
UPPERCASE
lowercase

Roda totalmente no seu navegador. Seus dados nunca saem do seu dispositivo.

What next?

How it works

O que "caso" realmente significa em código

Quando um nome contém múltiplas palavras, você precisa de um separador e uma regra de casing. Diferentes comunidades linguísticas acertaram em diferentes combinações, e as convenções são notavelmente estáveis ao longo de décadas de código:

  • JavaScript / Java / Swift: camelCase para variáveis e funções, PascalCase para tipos e classes.
  • Python / Ruby / Rust: snake_case para variáveis e funções, PascalCase para classes.
  • CSS / Atributos HTML / URLs: kebab-case porque o caractere de espaço é reservado.
  • Variáveis de ambiente / Palavras-chave SQL / Constantes: CONSTANT_CASE (ou SCREAMING_SNAKE).
  • Caminhos do sistema de arquivo: path/case com separadores /.
  • Notação de ponto (chaves de config, namespaces): dot.case.

Escolha a convenção do arquivo que você está editando. Não lute contra isso — convenção é o que permite que o código seja lido como prosa por pessoas que conhecem a linguagem.

Quando você vai usar um conversor

  • Gerando variáveis de ambiente a partir de chaves de config (api.timeoutAPI_TIMEOUT).
  • Construindo nomes de classe CSS a partir de props de componentes React (primaryButtonprimary-button).
  • Nomeando colunas de banco de dados a partir de propriedades de objeto (firstNamefirst_name).
  • Geração de código entre linguagens (TypeScript → Python ORM, Swagger → cliente JS).
  • Renomeando variáveis consistentemente em uma refatoração.

A armadilha do acrônimo

Qual é a versão snake_case de XMLHttpRequest? Duas respostas razoáveis:

  • xml_http_request — trate cada acrônimo como uma palavra separada
  • x_m_l_http_request — trate cada letra de capital como um limite de palavra

A maioria das bibliotecas modernas (incluindo a que esta ferramenta embrulha, change-case) fazem o primeiro — elas reconhecem runs de letras de capital como um único acrônimo. Esta é a convenção que você quase sempre quer. Se uma biblioteca produzir a segunda forma, troque de bibliotecas.

O camelCase correspondente: xmlHttpRequest. PascalCase: XmlHttpRequest. Note as letras minúsculas dentro do acrônimo — isso é deliberado e corresponde à forma como o navegador realmente expõe o nome (window.xmlHttpRequest após transformações Babel, etc.).

Padrões comuns por ecossistema

Caso de usoConvençãoExemplo
Variável JScamelCasefirstName
Classe/tipo JSPascalCaseUserService
Const JS (global)CONSTANT_CASEMAX_RETRIES
Variável Pythonsnake_casefirst_name
Classe PythonPascalCaseUserService
Classe CSSkebab-casebtn-primary
Atributo HTMLkebab-casedata-user-id
Slug de URLkebab-case/my-blog-post
Nome de arquivokebab-case (web), snake_case (Python)user-profile.tsx / user_profile.py
Variável de ambienteCONSTANT_CASEDATABASE_URL
Campo GraphQLcamelCaseuserName
Campo API JSONcamelCase ou snake_case (escolha do projeto)firstName / first_name

Sensibilidade de caso do arquivo

macOS por padrão tem um sistema de arquivo case-insensitive (HFS+/APFS formatado dessa forma). Linux é case-sensitive. Windows NTFS é case-insensitive mas case-preserving. Isso morde projetos entre plataformas: um arquivo nomeado Button.tsx importado como ./button.tsx funciona no macOS, quebra em CI no Linux. Defina seu CI para Linux desde o primeiro dia para pegar isso imediatamente.

Como esta ferramenta ajuda

  • Cole texto uma vez, veja todas as 12 variantes de caso ao mesmo tempo.
  • Clique em qualquer saída para copiar.
  • Lida com acrônimos corretamente (usa change-case).
  • Funciona em entrada multi-linha (cada linha convertida independentemente).

Ferramentas relacionadas

  • Slugify — quando você precisa de saída segura para URL (lida com diacríticos, unicode, emoji).
  • Regex Tester — quando você precisa encontrar/substituir padrões de caso programaticamente.

FAQ

camelCase vs PascalCase?

Mesmos limites de palavra, caractere inicial diferente. helloWorld é camelCase (primeira letra minúscula), HelloWorld é PascalCase (primeira letra maiúscula). Convenção JavaScript/Java: camelCase para variáveis, PascalCase para classes/tipos.

Por que CSS usa kebab-case?

Porque _ e outros caracteres tinham significados específicos em CSS inicial, e - já era usado como um caractere de sintaxe. CSS moderno ainda usa kebab-case para nomes de classe e propriedades (background-color, não backgroundColor).

Convenção de variável de ambiente de nomeação?

CONSTANT_CASE (maiúscula com sublinhados). Universal em shells, linguagens de programação, tempos de execução de contêiner. DATABASE_URL, API_KEY, NODE_ENV.

Manipulando acrônimos — Url ou URL?

Estilo moderno: Url (trate o acrônimo como uma palavra normal). Estilo mais antigo: URL (preserve tudo em maiúsculas). A stdlib JavaScript principalmente usa Url (XMLHttpRequest é a exceção famosa — e você pode ver por que as pessoas se arrependem). Escolha uma e aplique consistentemente.

Meu texto é enviado para algum lugar?

Não — toda conversão é executada no seu navegador usando a biblioteca de código aberto change-case. A aba de rede mostrará zero solicitações.

More text regex tools