Case converter — UPPERCASE, lowercase, camelCase & meer
Zet tekst direct om tussen UPPERCASE, lowercase, Title Case, Sentence case, camelCase, PascalCase, snake_case, kebab-case, CONSTANT_CASE en 6 andere formaten. Gratis, alleen in de browser, geen account nodig.
Text cases
lowercase
Alle letters in lowercase. Witruimte behouden.
UPPERCASE
Alle letters in uppercase. Witruimte behouden.
Title Case
Eerste letter van elk woord met een hoofdletter.
Sentence case
Eerste letter van elke zin met een hoofdletter.
iNVERSE cASE
Wissel upper/lower voor elke letter.
aLtErNaTiNg cAsE
Wissel lower/upper per letter af.
RaNdOm CaSe
Muntworp per letter, onafhankelijk.
Programming cases
camelCase
Eerste woord in lowercase, rest met hoofdletters, geen scheidingstekens.
PascalCase
Elk woord met een hoofdletter, geen scheidingstekens.
snake_case
Lowercase, verbonden door underscores.
kebab-case
Lowercase, verbonden door koppeltekens.
CONSTANT_CASE
Uppercase, verbonden door underscores.
dot.case
Lowercase, verbonden door punten.
path/case
Lowercase, verbonden door forward slashes.
Header-Case
Elk woord met een hoofdletter, verbonden door koppeltekens.
Wat is een case converter?
Een case converter is een klein hulpmiddel dat een stuk tekst neemt en het opnieuw rendert in een andere letter-case-conventie. De simpelste vormen zijn UPPERCASE en lowercase — wissel elke letter naar één case. De rijkere vormen passen linguïstische regels toe (Title Case zet de eerste letter van elk woord met een hoofdletter, Sentence case zet de eerste letter van elke zin met een hoofdletter) of programming-naming regels (camelCase verbindt woorden door elk woord na het eerste met een hoofdletter te zetten; snake_case zet alles in lowercase en verbindt met underscores). Online case converters bestaan al sinds het web textareas heeft, omdat de conversie mechanisch simpel is maar saai om met de hand te doen voor een niet-triviale hoeveelheid tekst.
De text-case-familie is degene waar schrijvers, redacteuren, marketeers en journalisten naar grijpen. UPPERCASE en lowercase zijn nuttig om de huisstijl te matchen of schreeuwerige ALL-CAPS uit een doorgestuurde e-mail te verwijderen. Title Case is voor koppen en boektitels. Sentence case is de moderne webstandaard voor bodytext, UI-microcopy, knoplabels en bijschriften — de stijlgidsen van Google, Apple en Microsoft zijn er het afgelopen decennium allemaal op geconvergeerd. De mocking-varianten (iNVERSE cASE, aLtErNaTiNg cAsE, RaNdOm CaSe) komen uit internetcultuur, met name de "spongebob-meme" die wordt gebruikt om iemand sarcastisch te citeren; alternating case is de strikte deterministische variant, random case de chaotische.
De programming-case-familie is degene die ontwikkelaars elke dag gebruiken. camelCase is de standaard voor identifiers in JavaScript, Java, Swift en Kotlin. PascalCase is de standaard voor class-namen in de meeste objectgeoriënteerde talen en component-namen in React, Vue en Angular. snake_case is de standaard voor Python, Ruby, Rust en Elixir, plus de meeste databasekolomnamen. kebab-case is de standaard voor CSS-class-namen, URL-slugs en HTML-attributen. CONSTANT_CASE is de standaard voor omgevingsvariabelen, top-level constanten en macro-namen. dot.case wordt gebruikt voor namespacing (Java-packages, MongoDB-veldpaden). path/case wordt gebruikt voor URL's en filesystem-paden. Header-Case is de canonieke HTTP/1.1 header-conventie (Content-Type, Access-Control-Allow-Origin).
Onder de motorkap is de interessante engineering de tokenizer die een invoer-string splitst in zijn semantische woorden. Het is makkelijk om op witruimte te splitsen; het moeilijke deel is woordgrenzen herkennen die geen witruimte-scheidingsteken hebben. De standaardconventie — gebruikt door lodash, het change-case npm-pakket, de PEP 8 van Python en de meeste echte codebases — voegt een grens in bij drie overgangen: lower-to-upper (parseHTML → parse / HTML), upper-to-upper-to-lower (XMLHttpRequest → XML / Http / Request), en letter-naar-cijfer / cijfer-naar-letter (file2x → file / 2 / x). Plus de expliciete scheidingstekens: koppelteken, underscore, punt, slash, backslash. Met die ene tokenizer kun je een identifier in elke case plakken — camelCase, snake_case, kebab-case, gemengd — en schoon converteren naar elke andere case zonder handmatige opschoning.
De tool die je gebruikt draait de tokenizer en alle 15 transformaties volledig in je browser met JavaScript. Er is geen netwerkverzoek, geen server, geen logging, geen cookie die opslaat wat je typt. De output voor elke case updatet bij elke toetsaanslag zonder debounce-vertraging. De Kopiëren-knop op elke kaart schrijft alleen die ene case naar je klembord. Opnieuw schudden rolt de random case opnieuw zonder de andere outputs te verstoren. Alles is ontworpen voor de snelheid van daadwerkelijk werk — plak, scan, kopieer, plak ergens anders.
Voor aanverwante teksttooling verwerkt de woordenteller lengte- en leestijd-metrieken, vergelijkt de text diff twee stukken tekst regel voor regel, en verifieert de regex tester pattern-matches tegen voorbeeldinvoer. Samen dekken ze het meeste tekst-vormgevings-werk dat een ontwikkelaar of contentmedewerker in een browser doet.
// 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();
} Belangrijkste functies
Alle 15 cases tegelijk zichtbaar
Plak je tekst en elke case rendert direct in een grid van twee kolommen. Geen formaat vooraf kiezen of door een dropdown stappen — scan de grid, kopieer degene die je nodig hebt. De text cases en programming cases zijn gesplitst in aparte secties zodat je in één oogopslag de juiste kaart vindt.
Slimme tokenizer voor programming cases
Herkent lower-to-upper grenzen (camelCase), upper-to-upper-to-lower grenzen (XMLHttpRequest → XML/Http/Request), letter-naar-cijfer grenzen (file2x), en alle gangbare scheidingstekens (-, _, ., /, \, witruimte). Komt overeen met de lodash- en change-case npm-conventies, dus de output komt terug zoals echte codebases verwachten.
Kopiëren per kaart met live feedback
Elke output-kaart heeft een eigen Kopiëren-knop — klik één keer en alleen die ene case komt op je klembord. Het label wisselt kort naar "Gekopieerd!" zodat je weet dat het werkte. Geen tekst selecteren of rechtsklikken nodig.
Realtime updates bij elke toetsaanslag
Elke case rendert opnieuw bij elke toetsaanslag zonder debounce-vertraging. Geen Omzetten-knop, geen pagina-reload, geen wachten. Gebouwd voor de snelheid van daadwerkelijk redigeren — plak, scan, kopieer, klaar.
Opnieuw schudden voor random case
De Random Case-output is onafhankelijk opnieuw te rollen met de Opnieuw schudden-knop, zonder andere outputs of de invoertekst te verstoren. Handig wanneer je een andere spongebob-meme-variant wilt voor dezelfde brontekst.
Behoudt witruimte en leestekens
Text-case transformaties (UPPERCASE, lowercase, Title, Sentence, iNVERSE, aLtErNaTiNg, RaNdOm) behouden elke spatie, regelafbreking en leesteken. Plak een document met meerdere alinea's en de opmaak overleeft intact — alleen de letter-case verandert.
Unicode-bewuste case-mappings
Gebruikt de Intl-bewuste methodes `toLocaleLowerCase` en `toLocaleUpperCase`, zodat de Turkse gepunte/punt-loze İ/ı, de Duitse ß, de Griekse final-sigma en andere locale-gevoelige cases correct worden verwerkt. De tokenizer herkent letters uit elk schrift (Unicode \p{L}).
100% browserbased privacy
Alle conversie draait lokaal in je browser. Je tekst wordt nooit geüpload, nooit gelogd, nooit opgeslagen, nooit geanalyseerd. Veilig voor niet-aangekondigde productnamen, interne variabele-schema's, concept-persberichten en al het vertrouwelijke materiaal. Nul netwerkverzoeken terwijl je typt — verifieer in het Netwerk-tabblad van je browser.
Acroniem-behoudende round-trip
Converteer XMLHttpRequest → xml_http_request → XmlHttpRequest en de structuur komt schoon terug. Dezelfde conventie als PEP 8 voor Python en het change-case-pakket voor JS — geen handmatige letter-voor-letter splitsing nodig bij het migreren van een codebase tussen case-conventies.
Case converter-alternatieven vergeleken
lodash (_.camelCase, _.snakeCase, _.kebabCase, _.startCase)
JavaScript-bibliotheekDe referentie-implementatie voor de meeste JS-codebases. Produceert identieke output aan deze tool voor de gangbare cases. lodash gebruikt een iets andere Unicode-verwerking voor randgevallen. Gebruik lodash in je code; gebruik deze tool voor eenmalige conversies of snelle spot-checks tijdens een refactor.
change-case npm-pakket
JavaScript-bibliotheekModulaire, tree-shakable case-conversie-bibliotheek — één functie per case. De tokenizer in deze tool komt exact overeen met de conventie van change-case v5+, dus outputs zijn byte-identiek voor ASCII-invoer. Gebruik change-case wanneer je alleen camelCase of alleen snake_case in je bundle wilt; gebruik deze tool voor interactieve conversie.
Ingebouwde case-commando's van VS Code
editor-commandoVS Code wordt geleverd met `Transform to Uppercase`, `Transform to Lowercase` en `Transform to Title Case` commando's (Cmd-Shift-P → zoeken). Geen camelCase, snake_case of andere programming cases standaard; extensies zoals "change-case" voegen ze toe. Het beste wanneer je tekst al in de editor staat; deze tool is sneller voor klembord-flow-conversies.
convertcase.net
browsertoolDe originele online case converter — alleen text cases (UPPERCASE, lowercase, Sentence, Title, alternating, inverse). Geen programming cases. Bestaat al sinds begin jaren 2000 en staat nog steeds bovenaan voor veel text-case-zoekopdrachten. Deze tool dekt dezelfde text cases en voegt de acht programming cases toe.
Microsoft Word's Hoofdlettergebruik (Start > Hoofdlettergebruik)
desktop-appWord heeft een Hoofdlettergebruik-knop op de Start-ribbon: Sentence case, lowercase, UPPERCASE, Elk Woord Met Hoofdletter, tOGGLE cASE. Geen programming cases. Workflow vereist dat je in Word zit met het bestand open. Gebruik Word wanneer je tekst al in een document staat; gebruik deze tool wanneer je in een browsertab zit.
Apple's Pages / TextEdit-transformaties
desktop-appmacOS Pages en TextEdit hebben Bewerken > Transformaties: Make Upper Case, Make Lower Case, Capitalize. Geen camelCase, snake_case of andere programming-varianten. Snel voor korte tekst in die apps; niet ontworpen voor code-identifier-werk.
Online programming-case converters (bijv. camelcasse.com)
browsertoolSpeciale single-case converters die zich op één transformatie richten (alleen camelCase, alleen snake_case). Minder cases om te scannen, meer gefocuste UI. Deze tool toont alle 15 tegelijk, wat sneller is voor refactoring over meerdere cases — maar heb je er altijd maar één nodig, dan is een single-case-tool prima.
Voorbeelden van case-conversie
ALL-CAPS e-mail-onderwerp → Sentence case
URGENT: PLEASE REVIEW THE Q4 BUDGET PROPOSAL BEFORE FRIDAY
Sentence case output: "Urgent: please review the q4 budget proposal before friday" — verwijdert direct de schreeuwerige all-caps toon voor doorsturen of een beleefd antwoord. Title Case output: "Urgent: Please Review The Q4 Budget Proposal Before Friday" — als je het liever formeel-koptekst-stijl houdt. Beide gebeuren tegelijk; kies degene die bij je antwoord past.
snake_case variabele → camelCase
user_profile_image_url
camelCase output: "userProfileImageUrl" — direct bruikbaar in JavaScript, Java of Swift. PascalCase: "UserProfileImageUrl" — voor C# / .NET property-namen of React component-namen. kebab-case: "user-profile-image-url" — voor CSS-classes of URL-slugs. CONSTANT_CASE: "USER_PROFILE_IMAGE_URL" — voor omgevingsvariabelen of top-level constanten. Eén plak-actie, vier kant-en-klare identifiers.
Acroniem-zware class-naam (XMLHttpRequest)
XMLHttpRequest
De tokenizer herkent de XML / Http / Request grens. Outputs: snake_case → "xml_http_request", kebab-case → "xml-http-request", CONSTANT_CASE → "XML_HTTP_REQUEST", Header-Case → "Xml-Http-Request". Dit is precies de conventie die lodash, het change-case-pakket en de PEP 8 acroniem-verwerking van Python allemaal gebruiken — je refactor van een JS-class-naam naar een Python-module-naam kost één plak-actie, geen handmatige letter-voor-letter splitsing.
Pagina-titel naar URL-slug (Title → kebab-case)
10 Tips for Faster JavaScript: A Complete Guide
kebab-case output: "10-tips-for-faster-javascript-a-complete-guide" — de URL-veilige slug die de meeste CMS'en (WordPress, Ghost, Hugo) standaard genereren. snake_case: "10_tips_for_faster_javascript_a_complete_guide" — voor bestandsnaam-conventies. De tokenizer laat de dubbele punt en andere leestekens schoon vallen; je hoeft de titel niet eerst op te schonen.
HTTP-header-naam vanuit camel-case (Header-Case)
accessControlAllowOrigin
Header-Case output: "Access-Control-Allow-Origin" — de exacte spelling die de HTTP-spec gebruikt, klaar voor een fetch() options-object of een server-side response. kebab-case: "access-control-allow-origin" — dezelfde canonieke vorm, in lowercase (sommige HTTP-bibliotheken gebruiken dit intern). Dit is de snelste manier om een JS object-property te vertalen naar een echte header-naam.
Constante vanuit een menselijke leesbare setting (CONSTANT_CASE)
max retries per request
CONSTANT_CASE output: "MAX_RETRIES_PER_REQUEST" — direct in een config-bestand als `const MAX_RETRIES_PER_REQUEST = 3` of een `.env`-bestand als `MAX_RETRIES_PER_REQUEST=3`. snake_case: "max_retries_per_request" — voor Python-stijl module-level constanten of YAML-keys. Zelfde bron, twee bestemmingen, geen handmatige bewerking.
Zin naar spongebob-meme (aLtErNaTiNg cAsE)
this is fine, everything is going great
aLtErNaTiNg cAsE output: "tHiS iS fInE, EvErYtHiNg iS gOiNg GrEaT" — het canonieke spongebob mocking-format. De wisseling is een globale toggle over alle letters, niet per woord, wat overeenkomt met wat convertcase.net en andere meme-generators doen. RaNdOm CaSe: wisselt elke letter onafhankelijk — handig wanneer je dezelfde sarcastische energie wilt met meer chaos.
Zo gebruik je de case converter
- 1
Plak of typ je tekst
Klik in het invoerveld en typ, of plak tekst — een zin, een alinea, een identifier, een kop. Elke case-output updatet direct. Klik op Voorbeeld om een representatieve zin te laden als je gewoon wilt zien hoe de cases van elkaar verschillen.
- 2
Scan de grid
De zeven text cases (UPPERCASE, lowercase, Title, Sentence, iNVERSE, aLtErNaTiNg, RaNdOm) staan in de bovenste sectie. De acht programming cases (camelCase, PascalCase, snake_case, kebab-case, CONSTANT_CASE, dot.case, path/case, Header-Case) staan in de onderste sectie. Elke kaart toont zijn case-label, een beschrijving van één regel, en de geconverteerde output.
- 3
Klik op Kopiëren bij de case die je wilt
Elke output-kaart heeft een eigen kleine Kopiëren-knop. Klik één keer — de case komt op je klembord, de knop flitst "Gekopieerd!", en je bent klaar om ergens anders te plakken. Je hoeft de output-tekst niet eerst te selecteren.
- 4
Schud de random case opnieuw als dat nodig is
Wil je een andere RaNdOm CaSe-variant voor dezelfde tekst, klik dan op Opnieuw schudden in de actiebalk. Alleen de Random Case-output verandert; de invoertekst en alle andere outputs blijven hetzelfde.
- 5
Wis wanneer je klaar bent
Klik op Wissen om het invoerveld te legen en elke output te resetten. Voorbeeld laadt de demo-tekst opnieuw. Alle acties zijn direct en worden nooit naar een server gestuurd.
Veelvoorkomende case-conversie-fouten
Een hele alinea snake-casen
Een zin met meerdere woorden in de snake_case-output plakken laat het samenvallen tot één gigantische identifier — technisch de juiste snake_case van de invoer, maar nooit wat je daadwerkelijk wilt voor een identifier. Gebruik snake_case voor één identifier tegelijk (een enkele variabele-naam of samengestelde zin). Voor tekst van alinea-lengte gebruik je de text-case transformaties.
Invoer: "the quick brown fox jumps over the lazy dog" snake_case output: the_quick_brown_fox_jumps_over_the_lazy_dog Resultaat: een identifier van 50 tekens die niemand wil.
Invoer: "quickBrownFox" snake_case output: quick_brown_fox Resultaat: een schone identifier met drie tokens.
APA Title Case-regels verwachten
De Title Case van deze tool zet elk woord met een hoofdletter — `Hello A World Of Examples` in plaats van het AP-stijl `Hello a World of Examples`. APA-, Chicago- en AP-stijlgidsen zetten allemaal korte lidwoorden en voorzetsels in koppen in lowercase. Heb je specifiek APA-stijl koppen nodig, gebruik dan een speciale title-case-tool. Voor algemene hoofdletter-gebruik (elk woord met een hoofdletter) is deze Title Case correct.
Invoer: "a tale of two cities" Title Case van deze tool: A Tale Of Two Cities Verwacht (AP-stijl): A Tale of Two Cities
Gebruik deze tool voor algemene hoofdletters. Gebruik een AP-stijl koptekst-tool voor redactionele titels. Verschillende tools, verschillende conventies.
Aannemen dat PascalCase round-trips de acroniem-hoofdletter behouden
XMLHttpRequest tokeniseert naar XML / Http / Request en re-PascalCased naar XmlHttpRequest. Dit is de conventie (hij laat de tokenizer schoon terugkomen), maar als je codebase acroniem-hoofdletters behoudt (XMLHttpRequest als XMLHttpRequest houdt), dan komt het resultaat niet overeen. Spot-check voor je een project-brede hernoeming doet.
Invoer: XMLHttpRequest PascalCase output: XmlHttpRequest Verwacht (acroniem behouden): XMLHttpRequest
Accepteer het title-cased acroniem, OF Behoud het acroniem handmatig na conversie, OF Gebruik een tokenizer die acroniem-hints respecteert.
URL's plakken en de slashes verliezen
`https://example.com/api/users` in snake_case plakken strip alle slashes en punten en produceert `https_example_com_api_users` — technisch correct maar nutteloos als URL. URL's staan al in path/case-formaat; haal ze niet door programming-case transformaties. Wil je het protocol of de host uit een URL strippen, gebruik dan eerst een URL-parsing-tool.
Invoer: https://example.com/api/users snake_case output: https_example_com_api_users Resultaat: geen URL meer.
Invoer: https://example.com/api/users Laat URL's met rust — ze staan al in het juiste formaat. Voor slug-extractie parse je het URL-pad handmatig.
dot.case en dotted-identifier-notatie door elkaar halen
De dot.case-output is `user.profile.image` — lowercase tokens verbonden door letterlijke punten, geschikt voor namespacing (Java-packages, MongoDB-veldpaden, TOML-keys). Het is niet hetzelfde als JavaScript property-access-notatie (`user.profile.image` ziet er identiek uit maar betekent "de image-property van de profile-property van user"). Heb je een property-access-pad nodig, dan produceert dot.case toevallig de juiste string; heb je een programming-identifier nodig, gebruik dan camelCase of snake_case.
Doel: "stel de user.profile.image variabele in" dot.case-output als variabele-naam: `user.profile.image` In de meeste talen is dit property-access, geen identifier.
Voor één variabele: userProfileImage (camelCase). Voor een namespaced key: user.profile.image (dot.case is correct). Match de case aan de doel-syntax.
Verwachten dat Sentence case afkortingen verwerkt
Sentence case behandelt elke `.` gevolgd door witruimte als zinsgrens, inclusief `Mr. Smith arrived.` wat correct `Mr. Smith arrived.` wordt, maar `e.g. this example` wordt `E.g. This example` (de `g.` wordt verkeerd als zinsafsluiter behandeld). Valse positieven op afkortingen zijn een bekende beperking van elke regex-gebaseerde zin-detector; voor redactionele precisie bewerk je de output met de hand.
Invoer: "e.g. this is an example. Read more." Sentence case-output: "E.g. This is an example. Read more." De `g.` werd ten onrechte als zinsafsluiter behandeld.
Draai eerst sentence case, fix daarna de paar afkortings-randgevallen met de hand. Of herformuleer om zin-interne punten te vermijden. (NLP-grade zin-detectie is een aparte tool-categorie.)
Wie gebruikt deze tool
- Ontwikkelaars die identifiers hernoemen over talen heen
- Een JS-variabele migreren naar een Python snake_case-naam, of een CSS-class naar een React PascalCase-component, of een omgevingsvariabele naar een config-constante. Plak de bronnaam één keer, kopieer de juiste output — geen handmatige letter-voor-letter conversie.
- Backend-ontwikkelaars die header-namen vertalen
- HTTP-headers zoals Content-Type, Access-Control-Allow-Origin, X-Forwarded-For hebben specifieke Header-Case-spellingen. Plak een camelCase JS property-naam, kopieer de canonieke header-vorm — werkt voor fetch() options, server-middleware en proxy-configuraties.
- Schrijvers die ALL-CAPS e-mailtoon verwijderen
- Doorgestuurde all-caps e-mails en chat-berichten lezen als geschreeuw. Plak ze in Sentence case om de toon te ontwapenen, of Title Case om een verzorgde-kop-uitstraling te behouden. Witruimte en leestekens blijven intact.
- Marketeers die koppen opstellen
- Title Case voor koppen, Sentence case voor bodytext en bijschriften — de conventie die de meeste moderne stijlgidsen (AP, Google, Apple) aanbevelen. Zie beide tegelijk om te vergelijken welke past bij de plaatsing.
- SEO-specialisten die URL-slugs genereren
- kebab-case is de URL-slug-conventie die elk CMS verwacht. Plak een pagina-titel met leestekens en hoofdletters, kopieer de kebab-case-output — klaar voor een WordPress-, Ghost- of Hugo-slug-veld. De tokenizer strip leestekens schoon.
- DBA's die kolommen en tabellen benoemen
- snake_case voor kolom- en tabelnamen is de universele conventie in PostgreSQL, MySQL, SQLite en de meeste ORM's. Plak een menselijk leesbaar label of een camelCase API-veldnaam, kopieer de snake_case-versie.
- Frontend-ontwikkelaars die CSS-classes schrijven
- kebab-case voor class-namen is de CSS-spec-conventie (BEM, Tailwind-utilities en de meeste design-systems). Plak een JS-component-naam in camelCase, kopieer de kebab-case-versie voor de bijbehorende CSS-module.
- Meme-makers en sarcasme-liefhebbers
- aLtErNaTiNg cAsE en RaNdOm CaSe zijn de spongebob-meme-formats die worden gebruikt om sarcastisch te bespotten of citeren. Opnieuw schudden rolt de random variant opnieuw zonder de invoer te wijzigen — genereer er een paar tot er één goed voelt.
Tokenisatie- & conversieregels
- Tokenisatie-regels
- Tokens worden geëxtraheerd door een spatie in te voegen bij vier grenzen: lower-to-upper (parseHTML → parse HTML), upper-to-upper-to-lower (XMLHttp → XML Http), letter-naar-cijfer (file2 → file 2), en cijfer-naar-letter (2x → 2 x). Daarna worden gangbare scheidingstekens (witruimte, koppelteken, underscore, punt, slash, backslash) samengevoegd tot enkele spaties. De resulterende tokens worden gesplitst, getrimd en lege weggelaten. Dit komt overeen met de lodash- en change-case-pakket-conventies.
- Programming-case outputs strippen leestekens
- camelCase, PascalCase, snake_case, kebab-case, CONSTANT_CASE, dot.case, path/case en Header-Case produceren allemaal schone identifiers — leestekens in de invoer (komma's, punten, haakjes) worden weggelaten omdat ze in de meeste taal-identifiers niet kunnen voorkomen. Wil je leestekens behouden, gebruik dan een van de text-case outputs (UPPERCASE, lowercase, Title, Sentence, iNVERSE, aLtErNaTiNg, RaNdOm).
- Text-case outputs behouden alles
- UPPERCASE, lowercase, Title Case, Sentence case, iNVERSE cASE, aLtErNaTiNg cAsE en RaNdOm CaSe behouden allemaal witruimte, regelafbrekingen en leestekens. Plak een document met meerdere alinea's en de structuur overleeft — alleen de letter-case verandert. Deze transformaties werken teken voor teken zonder tokenisatie.
- Title Case (naïeve variant)
- Title Case in deze tool zet de eerste letter van elk door witruimte gescheiden woord met een hoofdletter en zet de rest in lowercase. APA-, Chicago- en AP-stijlgidsen raden aan korte lidwoorden en voorzetsels (a, an, the, of, in, for) in lowercase te zetten; die varianten verschillen genoeg om een aparte tool te rechtvaardigen. Gebruik deze Title Case voor algemene hoofdletter-gebruik; gebruik een koptekst-specifieke tool voor AP-stijl koppen.
- Sentence case grens-detectie
- Sentence case zet alles in lowercase en zet daarna de eerste letter van de invoer en de eerste letter na elke zinsafsluiter (. ! ? 。 ! ?) gevolgd door witruimte met een hoofdletter. De detector probeert geen afkortingen zoals Mr. of U.S.A. te disambigueren — valse positieven daar zijn rumoeriger dan de zeldzame gemiste case.
- Alternating case gebruikt een globale toggle
- aLtErNaTiNg cAsE wisselt tussen lower en upper voor elke letter, met een globale toggle die over woordgrenzen heen loopt. Niet-letter-tekens schuiven de toggle niet door. Dit komt overeen met de conventie van convertcase.net en andere meme-generators — voorspelbaar en reproduceerbaar voor dezelfde invoer.
- Random case gebruikt Math.random()
- RaNdOm CaSe draait een onafhankelijke muntworp per letter met Math.random(). Elke klik op Opnieuw schudden produceert een ander resultaat. De random-bron is niet cryptografisch sterk; prima voor informele tekst, maar gebruik het niet voor wachtwoordgeneratie (gebruik daarvoor de speciale wachtwoord-generator).
- Unicode- en locale-bewuste case-mappings
- Gebruikt `toLocaleLowerCase()` en `toLocaleUpperCase()` zodat de Turkse gepunte/punt-loze İ/ı, de Duitse ß (die in standaard-verwerking als SS in hoofdletters komt) en andere locale-gevoelige case-mappings correct worden verwerkt. Tokenisatie gebruikt \p{L} om letters uit elk schrift te herkennen. Programming-case outputs vallen standaard terug op ASCII-identifier-tekens voor cross-language compatibiliteit.
Aanbevolen aanpak voor het kiezen van een case
- Kies de case die bij je codebase past
- De juiste case voor een variabele-naam is niet de mooiste — het is degene die je codebase al gebruikt. JavaScript en Java: camelCase voor variabelen en methodes, PascalCase voor classes. Python, Ruby, Rust: snake_case voor alles behalve class-namen (die zijn PascalCase). CSS en URL's: kebab-case. Omgevingsvariabelen en constanten: CONSTANT_CASE. Match de lokale conventie; consistentie wint van theoretische correctheid.
- Gebruik Sentence case voor UI-microcopy
- De design-systems van Google, Apple en Microsoft zijn het afgelopen decennium allemaal gestandaardiseerd op Sentence case voor knoplabels, menu-items, dialoog-tekst en andere UI-microcopy. Title Case in UI leest nu als ouderwets en licht schreeuwerig. Bewaar Title Case voor primaire koppen, pagina-titels en boektitels.
- Strip slimme aanhalingstekens voor het plakken
- Plakken vanuit Microsoft Word, Google Docs of Apple Notes kan slimme aanhalingstekens (“”), em-dashes (—) en andere typografische tekens meebrengen die er identiek uitzien aan ASCII maar anders worden gecodeerd. De case-transformaties verwerken ze correct, maar converteer je naar een programming-case identifier, vervang ze dan eerst handmatig door ASCII-equivalenten om verrassingen in je code-editor te voorkomen.
- Converteer één identifier tegelijk voor programming cases
- camelCase, snake_case, kebab-case, enz. produceren één identifier vanuit de hele invoer. Plak je een zin in snake_case, dan krijg je één lange identifier — technisch correct maar zelden wat je wilt. Plak voor identifier-conversie één woord of samenstelling tegelijk. Voor tekst van alinea-lengte gebruik je de text-case transformaties.
- Verifieer acroniem-round-trips voor je refactort
- XMLHttpRequest → xml_http_request → XmlHttpRequest is de standaard round-trip; het acroniem wordt op de terugweg title-cased. Behoudt je codebase de originele acroniem-hoofdletter (XmlHttpRequest blijft XMLHttpRequest), dan komt de round-trip niet exact overeen. Spot-check een paar conversies voordat je een project-brede hernoeming doet.
- Gebruik Header-Case voor HTTP/1.1, kebab-case voor HTTP/2
- HTTP/1.1 is case-insensitive voor header-namen, maar Header-Case (Content-Type, X-Forwarded-For) is de conventionele menselijke leesvorm die iedereen gebruikt. HTTP/2 vereist expliciet lowercase header-namen — gebruik kebab-case daarvoor (content-type, x-forwarded-for). Bij twijfel werkt kebab-case in beide protocollen.
- Opnieuw schudden voor variatie, niet voor security
- Random Case is leuk voor memes, maar niet random in cryptografische zin — hij gebruikt Math.random(), wat prima is voor visuele variatie, maar niet voor iets waarbij randomness ertoe doet (wachtwoordgeneratie, security-tokens, A/B-testing). Gebruik de speciale wachtwoord-generator voor cryptografische randomness.
Veelgestelde vragen
Wat doet een case converter?
Wat is het verschil tussen camelCase, PascalCase en snake_case?
Hoe gaat de tokenizer om met acroniemen zoals XMLHttpRequest of parseHTML?
Wat is Title Case versus Sentence case?
Wordt mijn tekst ergens geüpload?
Hoe zet ik tekst om naar camelCase vanuit elke andere case?
Ondersteunt de tool Unicode en niet-Engelse letters?
Wat is het verschil tussen dot.case en path/case?
Waarom splitst de tokenizer op getallen (file2x → file, 2, x)?
Hoe verschilt alternating case van random case?
Converteert dit HTTP-header-namen?
Kan ik een hele alinea tegelijk converteren?
Hoe nauwkeurig is dit vergeleken met lodash, change-case of andere case-bibliotheken?
Waarom bestaan Sentence case en Title Case allebei als ze er hetzelfde uitzien?
Gerelateerde tools
Alle tools bekijken →Gratis regex-tester — patronen testen & debuggen online
Tekstverwerking
Test reguliere expressies direct tegen elke tekst. Live highlighting van overeenkomsten, vastlegroepen, voorvertoning van vervangingen, splitsen en patroonuitleg. JavaScript-flavor regex, 100% privé, gratis, geen account.
Tekst vergelijken & Diff
Tekstverwerking
Vergelijk direct twee teksten in de browser. Naast-elkaar weergave met inline woordmarkering, unified-diff export, hoofdletters / spaties / lege regels negeren. 100 % in de browser — geen upload, je tekst blijft op je apparaat.
Gratis woordenteller & tekentelling
Tekstverwerking
Tel direct woorden, tekens, zinnen, alinea's en leestijd. Live woordenteller met limietcontroles voor Twitter, meta description en Instagram. Gratis, privé, geen account nodig.
Talstelsel omrekenen — online converter
Omrekentools
Reken je getal direct om tussen binair, hex, decimaal, octaal en elk talstelsel (2-36). Gratis en privé — alles draait in je browser.
Base64 decoderen en encoderen online
Encodering en formattering
Base64 decoderen en encoderen direct in je browser. Realtime conversie met volledige UTF-8- en emoji-ondersteuning. 100% privé — geen account nodig.
Crontab generator & cron-uitdrukking bouwen
Datum en tijd
Bouw, valideer en ontleed cron-uitdrukkingen in je browser. Live preview van de volgende run in lokale tijd of UTC. POSIX 5-veld syntaxis, presets, uitleg in begrijpelijk Nederlands. Gratis, privé, geen account nodig.