ToolsForWeb

Case Converter

Transform text between common casing styles: lower, UPPER, Title, Sentence, camelCase, PascalCase, snake_case, kebab-case and CONSTANT_CASE.

Loading tool…

About this tool

Re-case text between twelve styles: lower, UPPER, Title, Sentence, camelCase, PascalCase, snake_case, kebab-case, CONSTANT_CASE, dot.case, Train-Case and aLtErNaTiNg. For the identifier styles the input is split into words on whitespace, underscores, hyphens, dots, slashes and camelCase boundaries (so getHTTPResponse becomes get, HTTP, response), then rejoined in the target style. Title and Sentence keep the original delimiters and only change which letters are capital. Multi-line input is converted line by line and the line breaks are kept. Unicode letters are preserved — cafe stays cafe with its accent; strip accents with the Slugify tool if you need ASCII.

When to use it

Renaming a variable, constant or CSS class to match a codebase's convention.
Turning a human title into a snake_case or kebab-case key for config or a database column.
Normalising a column of headings or labels to consistent Title or Sentence case.
Converting an identifier pasted from one language's style to another's.

Questions

How does Title case differ from PascalCase here?

Title case keeps your spaces and punctuation and only capitalises the first letter of each word, so 'hello world-example' becomes 'Hello World-Example'. PascalCase discards the delimiters entirely and concatenates the capitalised words into 'HelloWorldExample'.

Why is the accent still there after converting to kebab-case?

The converter changes case and word separators only; it never transliterates. 'Café Data' becomes 'café-data', accent intact. If you need a plain-ASCII, URL-safe string, use the Slugify tool, which removes diacritics.

How are acronyms split?

A run of capitals followed by a capitalised word is treated as a boundary: XMLHttpRequest splits into XML, Http, Request, and getHTTPResponseCode into get, HTTP, response, code. The acronym letters are lowercased along with everything else for the identifier styles.

What does alternating case do with spaces and punctuation?

It toggles between lower and upper on each letter only, skipping non-letters in the count, so the rhythm continues across spaces and dashes: 'hello world' becomes 'hElLo WoRlD'.

Related tools