Convertitore maiuscole-minuscole online
Converti testo tra UPPERCASE, lowercase, Title Case, camelCase, snake_case e altri 10 formati all'istante. Gratuito, solo browser, senza registrazione.
Text cases
lowercase
Tutte le lettere in minuscolo. Spazi bianchi preservati.
UPPERCASE
Tutte le lettere in maiuscolo. Spazi bianchi preservati.
Title Case
Prima lettera di ogni parola in maiuscolo.
Sentence case
Prima lettera di ogni frase in maiuscolo.
iNVERSE cASE
Scambia maiuscolo/minuscolo per ogni lettera.
aLtErNaTiNg cAsE
Alterna minuscolo/maiuscolo per lettera.
RaNdOm CaSe
Lancio di moneta indipendente per ogni lettera.
Programming cases
camelCase
Prima parola in minuscolo, resto in maiuscolo, nessun separatore.
PascalCase
Ogni parola in maiuscolo, nessun separatore.
snake_case
Minuscolo, unito da underscore.
kebab-case
Minuscolo, unito da trattini.
CONSTANT_CASE
Maiuscolo, unito da underscore.
dot.case
Minuscolo, unito da punti.
path/case
Minuscolo, unito da slash in avanti.
Header-Case
Ogni parola in maiuscolo, unita da trattini.
Cos'è un convertitore di maiuscole-minuscole?
Un convertitore di maiuscole-minuscole è una piccola utility che prende un pezzo di testo e lo ri-renderizza in una convenzione di case diversa. Le forme più semplici sono UPPERCASE e lowercase — capovolge ogni lettera in un unico case. Le forme più ricche applicano regole linguistiche (Title Case mette in maiuscolo la prima lettera di ogni parola, Sentence case mette in maiuscolo la prima lettera di ogni frase) o regole di naming per la programmazione (camelCase unisce le parole mettendo in maiuscolo ciascuna dopo la prima; snake_case mette tutto in minuscolo e unisce con underscore). I convertitori di case online esistono da quando il web ha le textarea, perché la conversione è meccanicamente semplice ma tediosa da fare a mano per qualunque quantità non banale di testo.
La famiglia text-case è quella a cui ricorrono scrittori, editor, marketer e giornalisti. UPPERCASE e lowercase sono utili per allinearsi allo stile di casa o per rimuovere l'ALL-CAPS urlato da un'email inoltrata. Title Case è per titoli e nomi di libri. Sentence case è lo standard web moderno per il testo del corpo, le microcopy UI, le label dei pulsanti e le didascalie — le style guide di Google, Apple e Microsoft hanno tutte convergeto su questo nell'ultimo decennio. Le varianti derisorie (iNVERSE cASE, aLtErNaTiNg cAsE, RaNdOm CaSe) vengono dalla cultura internet, in particolare dallo "spongebob meme" usato per citare sarcasticamente qualcuno; alternating case è la variante rigorosa deterministica, random case è quella caotica.
La famiglia programming-case è quella che gli sviluppatori usano ogni singolo giorno. camelCase è lo standard per gli identificatori di JavaScript, Java, Swift e Kotlin. PascalCase è lo standard per i nomi di classi nella maggior parte dei linguaggi orientati agli oggetti e per i nomi di componenti in React, Vue e Angular. snake_case è lo standard per Python, Ruby, Rust ed Elixir, oltre alla maggior parte dei nomi di colonne dei database. kebab-case è lo standard per nomi di classi CSS, slug URL e attributi HTML. CONSTANT_CASE è lo standard per variabili d'ambiente, costanti di alto livello e nomi di macro. dot.case è usato per il namespacing (package Java, percorsi di campo MongoDB). path/case è usato per URL e percorsi del filesystem. Header-Case è la convenzione canonica degli header HTTP/1.1 (Content-Type, Access-Control-Allow-Origin).
Sotto il cofano, l'ingegneria interessante è il tokenizer che divide una stringa di input nelle sue parole semantiche. È facile dividere sullo spazio bianco; la parte difficile è riconoscere i confini di parola che non hanno un separatore di spazio bianco. La convenzione standard — usata da lodash, dal pacchetto npm change-case, dal PEP 8 di Python e dalla maggior parte delle codebase reali — inserisce un confine in tre transizioni: minuscola-maiuscola (parseHTML → parse / HTML), maiuscola-maiuscola-minuscola (XMLHttpRequest → XML / Http / Request), e lettera-cifra / cifra-lettera (file2x → file / 2 / x). Più i separatori espliciti: trattino, underscore, punto, slash, backslash. Con quel singolo tokenizer puoi incollare un identificatore in qualunque case — camelCase, snake_case, kebab-case, misto — e convertirlo pulitamente in qualunque altro case senza pulizia manuale.
Lo strumento che stai usando esegue il tokenizer e tutte le 15 trasformazioni interamente nel tuo browser tramite JavaScript. Non c'è alcuna chiamata di rete, nessun server, nessun logging, nessun cookie che registri ciò che digiti. L'output per ogni case si aggiorna a ogni battuta senza ritardo di debounce. Il pulsante Copia su ogni card scrive negli appunti solo quel singolo case. Rimescola ritira il random case senza disturbare gli altri output. Tutto è progettato per la velocità del lavoro reale — incolla, scorri, copia, incolla altrove.
Per strumenti correlati al testo, il contatore di parole gestisce le metriche di lunghezza e tempo di lettura, il text diff confronta due pezzi di testo riga per riga, e il regex tester verifica i match di pattern su input di esempio. Insieme coprono la maggior parte del lavoro di modellazione del testo che uno sviluppatore o un content worker fa in un browser.
// The tokenizer that powers every programming-case conversion
function tokenize(input) {
return input
.replace(/([a-z0-9])([A-Z])/g, '$1 $2') // lower→upper: parseHTML → parse HTML
.replace(/([A-Z]+)([A-Z][a-z])/g, '$1 $2') // acronym boundary: XMLHttp → XML Http
.replace(/([A-Za-z])(\d)/g, '$1 $2') // letter→digit: file2 → file 2
.replace(/(\d)([A-Za-z])/g, '$1 $2') // digit→letter: 2x → 2 x
.replace(/[\s\-_./\\]+/g, ' ') // collapse separators
.split(' ').filter(Boolean);
}
// Then each case is a one-liner over the tokens
const camelCase = (s) => tokenize(s).map((t, i) => i === 0 ? t.toLowerCase() : cap(t)).join('');
const snakeCase = (s) => tokenize(s).map(t => t.toLowerCase()).join('_');
const kebabCase = (s) => tokenize(s).map(t => t.toLowerCase()).join('-');
const PascalCase = (s) => tokenize(s).map(cap).join('');
function cap(t) {
return t.charAt(0).toUpperCase() + t.slice(1).toLowerCase();
} Caratteristiche principali
Tutti i 15 case visibili in una volta sola
Incolla il tuo testo e ogni case si renderizza all'istante in una griglia a due colonne. Non c'è bisogno di scegliere prima un formato o di scorrere un dropdown — scorri la griglia, copia quello che ti serve. I text case e i programming case sono divisi in sezioni separate così trovi la card giusta in un solo sguardo.
Tokenizer intelligente per i Programming case
Riconosce confini minuscola-maiuscola (camelCase), confini maiuscola-maiuscola-minuscola (XMLHttpRequest → XML/Http/Request), confini lettera-cifra (file2x) e tutti i separatori comuni (-, _, ., /, \, spazio bianco). Corrisponde alle convenzioni di lodash e del pacchetto npm change-case, quindi l'output fa round-trip come si aspettano le codebase reali.
Copia per-card con feedback in tempo reale
Ogni card di output ha il proprio pulsante Copia — clicca una volta e solo quel singolo case finisce nei tuoi appunti. L'etichetta passa brevemente a "Copiato!" così sai che ha funzionato. Nessun bisogno di evidenziare il testo o di fare click destro.
Aggiornamenti in tempo reale a ogni battuta
Ogni case si ri-renderizza a ogni battuta senza ritardo di debounce. Niente pulsante Converti da premere, niente ricarica di pagina, niente attesa. Costruito per la velocità dell'editing reale — incolla, scorri, copia, fatto.
Rimescola per Random Case
L'output Random Case è ritirabile in modo indipendente con il pulsante Rimescola, senza disturbare alcun altro output né il testo di input. Utile quando vuoi una variante spongebob-meme diversa per lo stesso testo sorgente.
Preserva spazi bianchi e punteggiatura
Le trasformazioni di text-case (UPPERCASE, lowercase, Title, Sentence, iNVERSE, aLtErNaTiNg, RaNdOm) preservano per design ogni spazio, interruzione di riga e segno di punteggiatura. Incolla un documento multi-paragrafo e la formattazione sopravvive intatta — cambia solo il case delle lettere.
Mappature di case Unicode-aware
Usa i metodi Intl-aware `toLocaleLowerCase` e `toLocaleUpperCase` così i turchi İ/ı con e senza punto, la ß tedesca, la sigma finale greca e altri case sensibili al locale vengono gestiti correttamente. Il tokenizer riconosce lettere da qualunque script (Unicode \p{L}).
Privacy 100% nel browser
Tutta la conversione gira localmente nel tuo browser. Il tuo testo non viene mai caricato, mai registrato, mai memorizzato, mai analizzato. Sicuro per nomi di prodotti non ancora annunciati, schemi di variabili interni, bozze di comunicati stampa e qualunque materiale confidenziale. Zero richieste di rete mentre digiti — verificalo nella scheda Network del tuo browser.
Round-trip che preserva gli acronimi
Converti XMLHttpRequest → xml_http_request → XmlHttpRequest e la struttura fa round-trip pulitamente. Stessa convenzione del PEP 8 per Python e del pacchetto change-case per JS — nessuna divisione manuale lettera per lettera quando migri una codebase tra convenzioni di case.
Alternative al convertitore di case a confronto
lodash (_.camelCase, _.snakeCase, _.kebabCase, _.startCase)
libreria JavaScriptL'implementazione di riferimento per la maggior parte delle codebase JS. Produce output identico a questo strumento per i case comuni. lodash usa una gestione Unicode leggermente diversa per i casi limite. Usa lodash nel tuo codice; usa questo strumento per conversioni una tantum o verifiche rapide a campione durante un refactor.
pacchetto npm change-case
libreria JavaScriptLibreria modulare e tree-shakable di conversione di case — una funzione per case. Il tokenizer in questo strumento corrisponde esattamente alla convenzione di change-case v5+, quindi gli output sono byte-identici per input ASCII. Usa change-case quando vuoi solo camelCase o solo snake_case nel tuo bundle; usa questo strumento per conversione interattiva.
Comandi di case incorporati in VS Code
comando editorVS Code è dotato dei comandi `Transform to Uppercase`, `Transform to Lowercase` e `Transform to Title Case` (Cmd-Shift-P → cerca). Niente camelCase, snake_case o altri programming case di default; estensioni come "change-case" li aggiungono. Migliore quando il tuo testo è già nell'editor; questo strumento è più veloce per conversioni in flusso clipboard.
convertcase.net
strumento browserIl convertitore di case online originale — solo text case (UPPERCASE, lowercase, Sentence, Title, alternating, inverse). Niente programming case. Esiste dai primi anni 2000 ed è ancora il primo risultato per molte ricerche di text-case. Questo strumento copre gli stessi text case e aggiunge anche gli otto programming case.
Cambia maiuscole/minuscole di Microsoft Word (Home > Cambia maiuscole/minuscole)
app desktopWord ha un pulsante Cambia maiuscole/minuscole sulla barra Home: Sentence case, lowercase, UPPERCASE, Iniziali maiuscole, tOGGLE cASE. Niente programming case. Il flusso di lavoro richiede di essere in Word con il file aperto. Usa Word quando il tuo testo è già in un documento; usa questo strumento quando sei in una scheda del browser.
Trasformazioni di Apple Pages / TextEdit
app desktopPages e TextEdit di macOS hanno Modifica > Trasformazioni: Tutto maiuscolo, Tutto minuscolo, Iniziali maiuscole. Niente camelCase, snake_case o altre varianti di programmazione. Veloce per testo breve in quelle app; non progettato per il lavoro con identificatori di codice.
Convertitori programming-case online (es. camelcasse.com)
strumento browserConvertitori single-case dedicati che si concentrano su una trasformazione (solo camelCase, solo snake_case). Meno case da scorrere, UI più focalizzata. Questo strumento mostra tutti i 15 in una volta sola, il che è più veloce per il refactor tra case multipli — ma se ti serve sempre solo uno, uno strumento single-case va bene.
Esempi di conversione di case
Oggetto email ALL-CAPS → Sentence Case
URGENT: PLEASE REVIEW THE Q4 BUDGET PROPOSAL BEFORE FRIDAY
Output Sentence case: "Urgent: please review the q4 budget proposal before friday" — rimuove all'istante il tono urlato del tutto-maiuscolo per inoltrare o rispondere in modo cortese. Output Title Case: "Urgent: Please Review The Q4 Budget Proposal Before Friday" — se preferisci mantenere uno stile formale-da-titolo. Entrambi avvengono in una volta sola; scegli quello che si adatta alla tua risposta.
Variabile snake_case → camelCase
user_profile_image_url
Output camelCase: "userProfileImageUrl" — inseriscilo direttamente in JavaScript, Java o Swift. PascalCase: "UserProfileImageUrl" — per nomi di proprietà C# / .NET o nomi di componenti React. kebab-case: "user-profile-image-url" — per classi CSS o slug URL. CONSTANT_CASE: "USER_PROFILE_IMAGE_URL" — per variabili d'ambiente o costanti di alto livello. Un incolla, quattro identificatori pronti all'uso.
Nome di classe ricco di acronimi (XMLHttpRequest)
XMLHttpRequest
Il tokenizer riconosce il confine XML / Http / Request. Output: snake_case → "xml_http_request", kebab-case → "xml-http-request", CONSTANT_CASE → "XML_HTTP_REQUEST", Header-Case → "Xml-Http-Request". Questa è esattamente la convenzione che usano lodash, il pacchetto change-case e la gestione degli acronimi del PEP 8 di Python — il tuo refactor da un nome di classe JS a un nome di modulo Python richiede un incolla, non una divisione manuale lettera per lettera.
Titolo di pagina a slug URL (Title → kebab-case)
10 Tips for Faster JavaScript: A Complete Guide
Output kebab-case: "10-tips-for-faster-javascript-a-complete-guide" — lo slug URL-safe che la maggior parte dei CMS (WordPress, Ghost, Hugo) genera per default. snake_case: "10_tips_for_faster_javascript_a_complete_guide" — per le convenzioni di nome file. Il tokenizer rimuove pulitamente i due punti e altra punteggiatura; non devi prima ripulire il titolo.
Nome di header HTTP da Camel-Case (Header-Case)
accessControlAllowOrigin
Output Header-Case: "Access-Control-Allow-Origin" — la grafia esatta che usa la specifica HTTP, pronta da inserire in un options object di fetch() o in una response lato server. kebab-case: "access-control-allow-origin" — stessa forma canonica, in minuscolo (alcune librerie HTTP la usano internamente). Questo è il modo più veloce per tradurre una proprietà di un oggetto JS in un vero nome di header.
Costante da un'impostazione leggibile (CONSTANT_CASE)
max retries per request
Output CONSTANT_CASE: "MAX_RETRIES_PER_REQUEST" — inseriscila in un file di configurazione come `const MAX_RETRIES_PER_REQUEST = 3` o in un file `.env` come `MAX_RETRIES_PER_REQUEST=3`. snake_case: "max_retries_per_request" — per costanti a livello di modulo in stile Python o chiavi YAML. Stessa sorgente, due destinazioni, nessuna modifica manuale.
Frase a Spongebob Meme (aLtErNaTiNg cAsE)
this is fine, everything is going great
Output aLtErNaTiNg cAsE: "tHiS iS fInE, EvErYtHiNg iS gOiNg GrEaT" — il formato canonico di derisione spongebob. L'alternanza è un toggle globale tra le lettere, non per-parola, corrispondente a ciò che fanno convertcase.net e altri generatori di meme. RaNdOm CaSe: capovolge ogni lettera in modo indipendente — utile quando vuoi la stessa energia sarcastica con più caos.
Come usare il convertitore di maiuscole-minuscole
- 1
Incolla o scrivi il tuo testo
Clicca nell'editor e digita, oppure incolla un qualunque testo — una frase, un paragrafo, un identificatore, un titolo. Ogni output di case si aggiorna all'istante. Clicca Esempio per caricare una frase rappresentativa se vuoi solo vedere come differiscono i case.
- 2
Scorri la griglia
I sette text case (UPPERCASE, lowercase, Title, Sentence, iNVERSE, aLtErNaTiNg, RaNdOm) sono nella sezione superiore. Gli otto programming case (camelCase, PascalCase, snake_case, kebab-case, CONSTANT_CASE, dot.case, path/case, Header-Case) sono nella sezione inferiore. Ogni card mostra la sua label di case, una descrizione di una riga e l'output convertito.
- 3
Clicca Copia sul case che vuoi
Ogni card di output ha il proprio piccolo pulsante Copia. Clicca una volta — il case finisce nei tuoi appunti, il pulsante lampeggia "Copiato!" e sei pronto a incollare altrove. Non c'è bisogno di evidenziare prima il testo di output.
- 4
Rimescola il random case se serve
Se vuoi una variante RaNdOm CaSe diversa per lo stesso testo, clicca Rimescola nella barra delle azioni. Cambia solo l'output Random Case; il testo di input e tutti gli altri output restano uguali.
- 5
Pulisci quando hai finito
Clicca Pulisci per svuotare l'editor e resettare ogni output. Esempio ricarica il testo dimostrativo. Tutte le azioni sono istantanee e non vengono mai inviate a un server.
Errori comuni di conversione di case
Cercare di mettere in snake_case un intero paragrafo
Incollare una frase multi-parola nell'output snake_case la collassa in un unico identificatore gigante — tecnicamente lo snake_case corretto dell'input, ma mai ciò che vuoi davvero per un identificatore. Usa snake_case per un identificatore alla volta (un singolo nome di variabile o una frase composta). Per testo di lunghezza paragrafo, usa le trasformazioni text-case.
Input: "the quick brown fox jumps over the lazy dog" Output snake_case: the_quick_brown_fox_jumps_over_the_lazy_dog Risultato: un identificatore di 50 caratteri che nessuno vuole.
Input: "quickBrownFox" Output snake_case: quick_brown_fox Risultato: un identificatore pulito a tre token.
Aspettarsi le regole APA di Title Case
Title Case di questo strumento mette in maiuscolo ogni parola — `Hello A World Of Examples` invece dello stile AP `Hello a World of Examples`. Le style guide APA, Chicago e AP mettono tutte in minuscolo articoli e preposizioni brevi nei titoli. Se ti servono titoli in stile APA specificamente, usa uno strumento title-case dedicato. Per la capitalizzazione generale (mettere in maiuscolo ogni parola), questo Title Case è corretto.
Input: "a tale of two cities" Title Case di questo strumento: A Tale Of Two Cities Atteso (stile AP): A Tale of Two Cities
Usa questo strumento per la capitalizzazione generale. Usa uno strumento headline in stile AP per i titoli editoriali. Strumenti diversi, convenzioni diverse.
Assumere che i round-trip PascalCase preservino la capitalizzazione degli acronimi
XMLHttpRequest si tokenizza in XML / Http / Request e ri-PascalCase diventa XmlHttpRequest. Questa è la convenzione (permette al tokenizer di fare round-trip pulitamente), ma se la tua codebase preserva la capitalizzazione degli acronimi (mantenendo XMLHttpRequest come XMLHttpRequest), il risultato non corrisponderà. Verifica a campione prima di fare un rename a livello di progetto.
Input: XMLHttpRequest Output PascalCase: XmlHttpRequest Atteso (acronimo preservato): XMLHttpRequest
Accetta l'acronimo title-cased, OPPURE Preserva manualmente l'acronimo dopo la conversione, OPPURE Usa un tokenizer che rispetti gli hint sugli acronimi.
Incollare URL e perdere gli slash
Incollare `https://example.com/api/users` in snake_case rimuove tutti gli slash e i punti e produce `https_example_com_api_users` — tecnicamente corretto ma inutile come URL. Gli URL sono già in formato path/case; non passarli attraverso le trasformazioni programming-case. Se vuoi rimuovere il protocollo o l'host da un URL, usa prima uno strumento di parsing URL.
Input: https://example.com/api/users Output snake_case: https_example_com_api_users Risultato: non è più un URL.
Input: https://example.com/api/users Lascia stare gli URL — sono già nel formato giusto. Per l'estrazione di slug, analizza manualmente il path dell'URL.
Confondere dot.case con la notazione di accesso a proprietà puntate
L'output dot.case è `user.profile.image` — token in minuscolo uniti da punti letterali, adatto al namespacing (package Java, percorsi di campo MongoDB, chiavi TOML). Non è lo stesso della notazione di accesso a proprietà JavaScript (`user.profile.image` sembra identico ma significa "la proprietà image della proprietà profile di user"). Se ti serve un path di accesso a proprietà, dot.case produce la stringa giusta per coincidenza; se ti serve un identificatore di programmazione, usa invece camelCase o snake_case.
Obiettivo: "imposta la variabile user.profile.image" Usare l'output dot.case come nome di variabile: `user.profile.image` Nella maggior parte dei linguaggi questo è accesso a proprietà, non un identificatore.
Per una singola variabile: userProfileImage (camelCase). Per una chiave namespaced: user.profile.image (dot.case è corretto). Allinea il case alla sintassi target.
Aspettarsi che Sentence Case gestisca le abbreviazioni
Sentence case tratta ogni `.` seguito da spazio bianco come confine di frase, incluso `Mr. Smith arrived.` che diventa `Mr. Smith arrived.` correttamente, ma `e.g. this example` diventa `E.g. This example` (il `g.` è trattato erroneamente come terminatore di frase). I falsi positivi sulle abbreviazioni sono un limite noto di ogni rilevatore di frasi basato su regex; per precisione editoriale, modifica a mano l'output.
Input: "e.g. this is an example. Read more." Output Sentence case: "E.g. This is an example. Read more." Il `g.` è stato erroneamente trattato come terminatore di frase.
Esegui prima sentence case, poi correggi a mano i pochi casi limite delle abbreviazioni. Oppure riformula per evitare punti interni alla frase. (Il rilevamento di frasi di livello NLP è una categoria di strumenti separata.)
Chi usa questo strumento
- Sviluppatori che rinominano identificatori tra linguaggi
- Migrare una variabile JS a un nome snake_case in Python, o una classe CSS a un componente PascalCase di React, o una variabile d'ambiente a una costante di config. Incolla il nome sorgente una volta, copia l'output giusto — nessuna conversione manuale lettera per lettera.
- Backend dev che traducono nomi di header
- Gli header HTTP come Content-Type, Access-Control-Allow-Origin, X-Forwarded-For hanno grafie Header-Case specifiche. Incolla un nome di proprietà JS in camelCase, copia la forma canonica dell'header — funziona per le options di fetch(), il middleware server e le configurazioni proxy.
- Scrittori che rimuovono il tono ALL-CAPS dalle email
- Email e messaggi di chat inoltrati in tutto maiuscolo si leggono come urla. Incollali in Sentence case per disinnescare il tono, o Title Case per mantenere un'aria da titolo curato. Spazi bianchi e punteggiatura sopravvivono intatti.
- Marketer che scrivono titoli
- Title Case per i titoli, Sentence case per il copy del corpo e le didascalie — la convenzione raccomandata dalla maggior parte delle style guide moderne (AP, Google, Apple). Vedi entrambi in una volta sola per confrontare quale si adatta alla collocazione.
- Specialisti SEO che generano slug URL
- kebab-case è la convenzione di slug URL che ogni CMS si aspetta. Incolla un titolo di pagina con punteggiatura e maiuscole, copia l'output kebab-case — pronto da inserire in un campo slug di WordPress, Ghost o Hugo. Il tokenizer rimuove pulitamente la punteggiatura.
- DBA che danno nome a colonne e tabelle
- snake_case per i nomi di colonne e tabelle è la convenzione universale in PostgreSQL, MySQL, SQLite e nella maggior parte degli ORM. Incolla una label leggibile o un nome di campo API in camelCase, copia la versione snake_case.
- Frontend dev che scrivono classi CSS
- kebab-case per i nomi di classi è la convenzione della specifica CSS (BEM, utility di Tailwind e la maggior parte dei design system). Incolla un nome di componente JS in camelCase, copia la versione kebab-case per il modulo CSS corrispondente.
- Creatori di meme ed entusiasti del sarcasmo
- aLtErNaTiNg cAsE e RaNdOm CaSe sono i formati spongebob-meme usati per deridere o citare sarcasticamente. Rimescola ritira la variante random senza cambiare l'input — generane qualcuna finché una non ti sembra giusta.
Regole di tokenizzazione e conversione
- Regole di tokenizzazione
- I token vengono estratti inserendo uno spazio in quattro confini: minuscola-maiuscola (parseHTML → parse HTML), maiuscola-maiuscola-minuscola (XMLHttp → XML Http), lettera-cifra (file2 → file 2) e cifra-lettera (2x → 2 x). Poi i separatori comuni (spazi bianchi, trattino, underscore, punto, slash, backslash) vengono collassati in singoli spazi. I token risultanti vengono divisi, trimmati e i vuoti vengono scartati. Questo corrisponde alle convenzioni di lodash e del pacchetto change-case.
- Gli output Programming-case rimuovono la punteggiatura
- camelCase, PascalCase, snake_case, kebab-case, CONSTANT_CASE, dot.case, path/case e Header-Case producono tutti identificatori puliti — la punteggiatura nell'input (virgole, punti, parentesi) viene scartata perché non può comparire nella maggior parte degli identificatori dei linguaggi. Se ti serve preservare la punteggiatura, usa uno degli output text-case (UPPERCASE, lowercase, Title, Sentence, iNVERSE, aLtErNaTiNg, RaNdOm).
- Gli output Text-case preservano tutto
- UPPERCASE, lowercase, Title Case, Sentence case, iNVERSE cASE, aLtErNaTiNg cAsE e RaNdOm CaSe preservano tutti spazi bianchi, interruzioni di riga e punteggiatura. Incolla un documento multi-paragrafo e la struttura sopravvive — cambia solo il case delle lettere. Queste trasformazioni operano carattere per carattere senza tokenizzazione.
- Title Case (variante naive)
- Title Case in questo strumento mette in maiuscolo la prima lettera di ogni parola separata da spazi bianchi e mette in minuscolo il resto. Le style guide APA, Chicago e AP raccomandano di mettere in minuscolo articoli e preposizioni brevi (a, an, the, of, in, for); quelle varianti sono abbastanza diverse da meritare uno strumento dedicato. Usa questo Title Case per la capitalizzazione generale; usa uno strumento headline-specifico per i titoli in stile AP.
- Rilevamento dei confini di Sentence Case
- Sentence case mette tutto in minuscolo, poi mette in maiuscolo la prima lettera dell'input e la prima lettera dopo qualunque terminatore di frase (. ! ? 。 ! ?) seguito da spazio bianco. Il rilevatore non tenta di disambiguare abbreviazioni come Mr. o U.S.A. — i falsi positivi lì sono più rumorosi del raro case mancato.
- Alternating Case usa un toggle globale
- aLtErNaTiNg cAsE si alterna tra minuscolo e maiuscolo per ogni lettera, con un toggle globale che si propaga attraverso i confini di parola. I caratteri non-lettera non avanzano il toggle. Questo corrisponde alla convenzione usata da convertcase.net e da altri generatori di meme — prevedibile e riproducibile per lo stesso input.
- Random Case usa Math.random()
- RaNdOm CaSe esegue un lancio di moneta indipendente per ogni lettera usando Math.random(). Ogni click su Rimescola produce un risultato diverso. La sorgente random non è crittograficamente forte; va bene per il testo informale ma non usarla per la generazione di password (usa il generatore di password dedicato per quello).
- Mappature di case Unicode e locale-aware
- Usa `toLocaleLowerCase()` e `toLocaleUpperCase()` così i turchi İ/ı con e senza punto, la ß tedesca (che in gestione standard diventa maiuscola SS) e altre mappature di case sensibili al locale vengono gestite correttamente. La tokenizzazione usa \p{L} per riconoscere lettere di qualunque script. Gli output programming-case per default usano caratteri di identificatore ASCII per compatibilità cross-language.
Best practice per scegliere un case
- Scegli il case che corrisponde alla tua codebase
- Il case giusto per un nome di variabile non è il più carino — è quello che la tua codebase usa già. JavaScript e Java: camelCase per variabili e metodi, PascalCase per le classi. Python, Ruby, Rust: snake_case per tutto tranne i nomi di classe (che sono PascalCase). CSS e URL: kebab-case. Variabili d'ambiente e costanti: CONSTANT_CASE. Allineati alla convenzione locale; la coerenza batte la correttezza teorica.
- Usa Sentence case per le microcopy UI
- I design system di Google, Apple e Microsoft si sono tutti standardizzati su Sentence case per label di pulsanti, voci di menu, testo di dialog e altre microcopy UI nell'ultimo decennio. Title Case nelle UI ora si legge come antiquato e leggermente urlato. Salva Title Case per i titoli principali, i titoli di pagina e i titoli di libri.
- Rimuovi le virgolette smart prima di incollare
- Incollare da Microsoft Word, Google Docs o Apple Notes può trascinarsi dietro virgolette smart (""), em-dash (—) e altri caratteri tipografici che sembrano identici a ASCII ma codificano diversamente. Le trasformazioni di case li gestiscono correttamente, ma se stai convertendo in un identificatore programming-case, sostituiscili manualmente con equivalenti ASCII prima per evitare sorprese nel tuo editor di codice.
- Converti un identificatore alla volta per i Programming case
- camelCase, snake_case, kebab-case, ecc. producono un singolo identificatore dall'intero input. Se incolli una frase in snake_case, ottieni un unico identificatore lungo — tecnicamente corretto ma raramente quello che vuoi. Per la conversione di identificatori, incolla una parola o un composto alla volta. Per testo di lunghezza paragrafo, usa le trasformazioni text-case.
- Verifica il round-trip degli acronimi prima del refactor
- XMLHttpRequest → xml_http_request → XmlHttpRequest è il round-trip standard; l'acronimo diventa title-cased al ritorno. Se la tua codebase preserva la capitalizzazione originale dell'acronimo (XmlHttpRequest resta come XMLHttpRequest), il round-trip non corrisponderà esattamente. Verifica a campione qualche conversione prima di fare un rename a livello di progetto.
- Usa Header-Case per HTTP/1.1, kebab-case per HTTP/2
- HTTP/1.1 è case-insensitive per i nomi degli header, ma Header-Case (Content-Type, X-Forwarded-For) è la grafia convenzionale leggibile dall'uomo che tutti usano. HTTP/2 richiede esplicitamente nomi di header in minuscolo — usa kebab-case per quelli (content-type, x-forwarded-for). In caso di dubbio, kebab-case funziona in entrambi i protocolli.
- Rimescola il Random Case per varietà, non per sicurezza
- Random Case è divertente per i meme ma non è random nel senso crittografico — usa Math.random(), che va bene per varietà visiva ma non per nulla in cui la casualità conti (generazione di password, token di sicurezza, A/B testing). Usa il generatore di password dedicato per la casualità crittografica.
Domande frequenti
Cosa fa un convertitore di maiuscole-minuscole?
Qual è la differenza tra camelCase, PascalCase e snake_case?
Come gestisce il tokenizer acronimi come XMLHttpRequest o parseHTML?
Cosa sono Title Case e Sentence case?
Il mio testo viene caricato da qualche parte?
Come converto testo in camelCase da qualunque altro case?
Lo strumento supporta Unicode e lettere non inglesi?
Qual è la differenza tra dot.case e path/case?
Perché il tokenizer divide sui numeri (file2x → file, 2, x)?
In cosa differisce alternating case da random case?
Questo strumento converte i nomi degli header HTTP?
Posso convertire un intero paragrafo in una volta sola?
Quanto è accurato questo rispetto a lodash, change-case o altre librerie di case?
Perché ci sono sia Sentence case sia Title Case se sembrano simili?
Strumenti correlati
Vedi tutti gli strumenti →Tester Regex gratuito — Debug e match dei pattern online
Elaborazione del testo
Testa pattern regex all'istante su qualsiasi testo. Evidenziazione delle corrispondenze, gruppi di acquisizione, anteprima di sostituzione e split. Espressioni regolari in JavaScript, 100% private, senza registrazione.
Confronta due testi — Diff
Elaborazione del testo
Confronta due testi all'istante nel browser. Vista affiancata, evidenziazione parola per parola, esportazione diff unificato, opzioni per ignorare maiuscole/spazi/righe vuote. 100 % browser — nessun upload.
Contatore di parole e caratteri gratuito
Elaborazione del testo
Conta parole, caratteri, frasi, paragrafi e tempo di lettura all'istante. Contatore di parole in tempo reale con controlli di limite per Twitter, meta description e Instagram. Gratuito, privato, senza registrazione.
Convertitore di Basi Numeriche — Bin, Hex, Ott, Dec
Strumenti di conversione
Converti istantaneamente tra binario, esadecimale, decimale, ottale e qualsiasi base (2-36). Strumento online gratuito e privato: tutta l'elaborazione avviene nel tuo browser.
Decodificatore e codificatore Base64
Codifica e formattazione
Decodifica e codifica Base64 online gratis. Conversione in tempo reale con pieno supporto UTF-8 ed emoji. 100% privato — gira nel tuo browser. Nessuna registrazione.
Generatore Crontab e Costruttore di Espressioni Cron
Data e ora
Genera, valida e decodifica espressioni cron online nel browser. Anteprima live delle prossime esecuzioni in ora locale o UTC. Sintassi POSIX a 5 campi, preset e descrizione in italiano.