Back to Home
Strings

How to Convert String Cases

Use case conversion methods and regex for different formats

Quick Answer (2024 ES6+ Way)

javascript
const text = 'hello world';
const upper = text.toUpperCase(); // "HELLO WORLD"
const lower = text.toLowerCase(); // "hello world"

Live Example

javascript
const camelCase = str => 
  str.replace(/[-_\s]+(\w)/g, (_, c) => c.toUpperCase())
     .replace(/^\w/, c => c.toLowerCase());

const snakeCase = str =>
  str.replace(/([A-Z])/g, '_$1')
     .toLowerCase()
     .replace(/^_/, '');

const kebabCase = str =>
  str.replace(/([a-z])([A-Z])/g, '$1-$2')
     .toLowerCase();

const titleCase = str =>
  str.toLowerCase()
     .split(' ')
     .map(word => word.charAt(0).toUpperCase() + word.slice(1))
     .join(' ');

console.log(camelCase('hello-world-example'));
console.log(snakeCase('helloWorldExample'));
console.log(kebabCase('HelloWorldExample'));
console.log(titleCase('hello world example'));

Common Variations

Pascal Case
javascript
const pascalCase = str =>
  str.replace(/[-_\s]+(\w)/g, (_, c) => c.toUpperCase())
     .replace(/^\w/, c => c.toUpperCase());
Capitalize First
javascript
const capitalize = str => 
  str.charAt(0).toUpperCase() + str.slice(1);

❌ Don't Do This (Outdated Way)

Avoid manual character replacement

javascript
// DON'T DO THIS
var result = '';
for (var i = 0; i < str.length; i++) {
  result += str[i].toUpperCase();
}

Browser Support

Works in all modern browsers (ES5+)

#strings#case#convert