La conversione di maiuscole e minuscole è il processo di modifica della capitalizzazione o del pattern di separazione delle parole in una stringa. Un convertitore di maiuscole prende un input come "hello world" e lo trasforma in UPPERCASE, lowercase, Title Case, camelCase, snake_case, kebab-case o altre convenzioni. La trasformazione è immediata per testo ASCII semplice, ma emergono casi particolari con gli acronimi ("XMLParser"), le regole specifiche per lingua (la I puntata turca) e le stringhe in più scritture.
I linguaggi di programmazione, i file system e le guide di stile impongono ciascuno le proprie convenzioni di denominazione. Le variabili JavaScript usano tipicamente camelCase. Le funzioni e le variabili Python seguono snake_case secondo PEP 8. I nomi delle classi CSS usano kebab-case. Le colonne dei database variano in base al team, ma snake_case domina in PostgreSQL e MySQL. Passare manualmente da una convenzione all'altra è lento e soggetto a errori, specialmente quando si rinominano elementi in decine di file.
Le convenzioni di maiuscole contano anche al di fuori del codice. Il Title Case segue regole definite da guide di stile come il Chicago Manual of Style e le norme APA, dove articoli e preposizioni brevi restano in minuscolo a meno che non aprano la frase. Il Sentence case capitalizza solo la prima parola e i nomi propri. L'editoria americana predilige il Title Case per i titoli; la maggior parte dei documenti tecnici europei usa invece il Sentence case.
Perché Usare Questo Convertitore?
Incolla qualsiasi testo e convertilo istantaneamente tra nove formati di maiuscole, senza installare un'estensione VS Code né scrivere uno script usa-e-getta.
⚡
Conversione Istantanea
Seleziona un formato e visualizza il risultato immediatamente. Nessun round-trip al server, nessuna attesa. Passa da un formato all'altro per confrontare l'output affiancato.
🔒
Elaborazione Privacy-First
Tutte le trasformazioni vengono eseguite nel browser con JavaScript. Il tuo testo rimane sul tuo dispositivo. Nulla viene inviato a un server né salvato da nessuna parte.
🔄
Nove Formati in Un Solo Strumento
UPPERCASE, lowercase, Title Case, Sentence case, camelCase, PascalCase, snake_case, kebab-case e CONSTANT_CASE. Un unico input copre ogni convenzione comune.
🌍
Nessun Account Necessario
Apri la pagina e inizia a convertire. Nessuna registrazione, nessuna estensione del browser, nessuna installazione desktop. Funziona su qualsiasi dispositivo con un browser moderno.
Casi d'Uso del Convertitore
Sviluppo Frontend
Converti i nomi delle prop dei componenti dalle risposte API in snake_case a camelCase per gli oggetti JavaScript. Rinomina le classi CSS da camelCase a kebab-case durante la migrazione a un sistema di denominazione BEM o utility-first.
Progettazione di API Backend
Converti i nomi dei campi tra convenzioni quando mappi colonne di database (snake_case) a chiavi di risposta JSON (camelCase). Verifica che i livelli di serializzazione producano il formato di output atteso.
DevOps e Infrastruttura
Genera nomi di variabili d'ambiente in CONSTANT_CASE da frasi descrittive. Converti i nomi delle risorse Terraform tra snake_case e kebab-case per allinearsi alle guide di stile del team.
QA e Test Automation
Prepara i dati dei fixture di test con nomi di campo correttamente capitalizzati. Individua le discrepanze di capitalizzazione tra i contratti API e le aspettative del client prima che raggiungano la produzione.
Data Engineering
Normalizza le intestazioni delle colonne quando importi file CSV o Excel in un database. Converti intestazioni in maiuscole miste come "Nome" in colonne snake_case come "nome" per un design dello schema coerente.
Scrittura Tecnica e Documentazione
Formatta i riferimenti al codice nella documentazione con la capitalizzazione corretta. Converti descrizioni in linguaggio naturale in nomi di classi PascalCase o slug URL kebab-case per la coerenza nelle specifiche tecniche.
Riferimento alle Convenzioni di Maiuscole
Ogni convenzione di denominazione ha regole specifiche per la capitalizzazione e la separazione delle parole. La tabella seguente mostra tutti e nove i formati supportati dallo strumento, con la frase di input "the quick brown fox" come riferimento.
Formato
Regola
Esempio
UPPERCASE
Every letter capitalized
THE QUICK BROWN FOX
lowercase
Every letter lowercased
the quick brown fox
Title Case
First letter of each word capitalized
The Quick Brown Fox
Sentence case
First letter of each sentence capitalized
The quick brown fox
camelCase
No separators, first word lowercase
theQuickBrownFox
PascalCase
No separators, every word capitalized
TheQuickBrownFox
snake_case
Words joined by underscores, all lowercase
the_quick_brown_fox
kebab-case
Words joined by hyphens, all lowercase
the-quick-brown-fox
CONSTANT_CASE
Words joined by underscores, all uppercase
THE_QUICK_BROWN_FOX
camelCase vs snake_case vs kebab-case
Queste tre convenzioni dominano nello sviluppo software, ma ciascuna appartiene a un ecosistema diverso. Scegliere quella sbagliata rompe i linter, viola i contratti API o produce codebase incoerenti.
camelCase
Standard per variabili, nomi di funzioni e chiavi di oggetti JavaScript e TypeScript. Java e C# lo usano per variabili locali e parametri di metodi. Le API JSON progettate per client JavaScript usano tipicamente chiavi camelCase. La prima parola è in minuscolo; ogni parola successiva inizia con una lettera maiuscola.
snake_case
Predefinito per Python (PEP 8), Ruby, Rust e la maggior parte dei database SQL. Anche le funzioni della libreria standard C seguono questo pattern. Le parole sono separate da underscore, tutte in minuscolo. CONSTANT_CASE (tutto maiuscolo con underscore) è la variante usata per costanti e variabili d'ambiente.
kebab-case
Standard per i nomi delle classi CSS, gli attributi HTML, gli slug URL e i nomi dei flag CLI (--output-dir). Comune in Lisp e Clojure. Le parole sono separate da trattini, tutte in minuscolo. La maggior parte dei linguaggi di programmazione non può usare i trattini negli identificatori, quindi kebab-case è limitato a stringhe, nomi di file e markup.
Esempi di Codice
Come convertire tra convenzioni di maiuscole in modo programmatico. Ogni esempio copre le trasformazioni più comuni: da camelCase a snake_case, da snake_case a camelCase, e le conversioni di base maiuscolo/minuscolo/title.
JavaScript
// camelCase → snake_case
function toSnakeCase(str) {
return str
.replace(/([a-z])([A-Z])/g, '$1_$2')
.replace(/[\s-]+/g, '_')
.toLowerCase()
}
toSnakeCase('myVariableName') // → "my_variable_name"
toSnakeCase('kebab-case-str') // → "kebab_case_str"
// snake_case → camelCase
function toCamelCase(str) {
return str
.toLowerCase()
.replace(/[_-](\w)/g, (_, c) => c.toUpperCase())
}
toCamelCase('my_variable_name') // → "myVariableName"
// Title Case
function toTitleCase(str) {
return str.replace(/\w\S*/g, w =>
w.charAt(0).toUpperCase() + w.slice(1).toLowerCase()
)
}
toTitleCase('the quick brown fox') // → "The Quick Brown Fox"
Python
import re
text = "the quick brown fox"
# UPPERCASE / lowercase
text.upper() # → "THE QUICK BROWN FOX"
text.lower() # → "the quick brown fox"
# Title Case
text.title() # → "The Quick Brown Fox"
# camelCase
def to_camel(s):
words = re.split(r'[\s_-]+', s)
return words[0].lower() + ''.join(w.capitalize() for w in words[1:])
to_camel("my_variable_name") # → "myVariableName"
# snake_case from camelCase
def to_snake(s):
return re.sub(r'([a-z])([A-Z])', r'\1_\2', s).lower()
to_snake("myVariableName") # → "my_variable_name"
# kebab-case
def to_kebab(s):
return re.sub(r'([a-z])([A-Z])', r'\1-\2', s).replace('_', '-').lower()
to_kebab("myVariableName") # → "my-variable-name"
camelCase inizia con una lettera minuscola (myVariable), mentre PascalCase inizia con una lettera maiuscola (MyVariable). In JavaScript, camelCase è usato per variabili e funzioni; PascalCase è usato per i nomi delle classi e dei componenti React. C# usa PascalCase per metodi e proprietà pubblici. L'unica differenza strutturale è il primo carattere.
Come converto camelCase in snake_case in JavaScript?
Inserisci un underscore prima di ogni lettera maiuscola usando una regex, poi converti il risultato in minuscolo: str.replace(/([a-z])([A-Z])/g, '$1_$2').toLowerCase(). Questo gestisce il camelCase standard. Per stringhe con lettere maiuscole consecutive come "XMLParser", è necessario un ulteriore passaggio con regex per separare correttamente le sequenze di maiuscole.
Perché Python usa snake_case invece di camelCase?
PEP 8, la guida di stile ufficiale di Python pubblicata nel 2001, ha scelto snake_case per funzioni e variabili perché Guido van Rossum e il team principale lo ritenevano più leggibile a colpo d'occhio. Studi come quello di Binkley et al. (2009) hanno rilevato che gli identificatori snake_case venivano riconosciuti più rapidamente dai programmatori rispetto a camelCase in certi compiti di lettura. La convenzione è applicata da linter come flake8 e pylint.
Il Title Case equivale a capitalizzare ogni parola?
Il Title Case semplice capitalizza la prima lettera di ogni parola, ed è quello che fa questo strumento. Il Title Case formale (AP, Chicago, APA) ha regole aggiuntive: gli articoli (a, an, the), le congiunzioni brevi (and, but, or) e le preposizioni brevi (in, on, at) restano in minuscolo a meno che non siano la prima o l'ultima parola. Il title case formale richiede una ricerca nel dizionario, non solo una trasformazione a livello di carattere.
Questo strumento gestisce Unicode e scritture non latine?
Lo strumento usa i metodi JavaScript incorporati toUpperCase() e toLowerCase(), che seguono le regole di capitalizzazione Unicode definite nello Unicode Standard (Capitolo 3, Sezione 3.13). Questo gestisce correttamente i caratteri accentati (é in É), la eszett tedesca (ss in SS) e le lettere greche. Tuttavia, le regole specifiche per lingua come la capitalizzazione turca (dove la i minuscola diventa İ con il punto, non I) dipendono dall'impostazione della lingua del browser, non dallo strumento.
Per cosa viene usato CONSTANT_CASE?
CONSTANT_CASE (chiamato anche SCREAMING_SNAKE_CASE) è usato per costanti e variabili d'ambiente. In JavaScript: const MAX_RETRIES = 3. In Python: MAX_RETRIES = 3 (per convenzione, poiché Python non ha vere costanti). Negli script shell: export DATABASE_URL=.... Lo stile tutto-maiuscolo segnala che un valore non dovrebbe essere riassegnato dopo l'inizializzazione.
Come scelgo la convenzione di maiuscole giusta per il mio progetto?
Segui la convenzione dominante per il tuo linguaggio e framework. JavaScript/TypeScript: camelCase per variabili, PascalCase per classi e componenti. Python: snake_case per funzioni e variabili, PascalCase per classi. CSS: kebab-case. SQL: snake_case per colonne e tabelle. Chiavi JSON di API REST: abbina il linguaggio del frontend (camelCase per client JS, snake_case per client Python). In caso di dubbio, controlla la configurazione del linter o il file .editorconfig nella root del progetto.