Skip to content

Latest commit

 

History

History
256 lines (174 loc) · 6.32 KB

README.md

File metadata and controls

256 lines (174 loc) · 6.32 KB

Change Case

Build status

Transform a string between camelCase, PascalCase, Capital Case, snake_case, param-case, CONSTANT_CASE and others.

Installation

npm install change-case --save

Usage

import * as changeCase from "change-case";

Core

These functions come bundled with change-case:

All core methods accept options as the second argument.

Transform into a string with the separator denoted by the next word capitalized.

camelCase("test string");
//=> "testString"

Transform into a space separated string with each word capitalized.

capitalCase("test string");
//=> "Test String"

Transform into upper case string with an underscore between words.

constantCase("test string");
//=> "TEST_STRING"

Transform into a lower case string with a period between words.

dotCase("test string");
//=> "test.string"

Transform into a dash separated string of capitalized words.

headerCase("test string");
//=> "Test-String"

Transform into a lower cased string with spaces between words.

noCase("testString");
//=> "test string"

Transform into a lower cased string with dashes between words.

paramCase("test string");
//=> "test-string"

Transform into a string of capitalized words without separators.

pascalCase("test string");
//=> "TestString"

Transform into a lower case string with slashes between words.

pathCase("test string");
//=> "test/string"

Transform into a lower case with spaces between words, then capitalize the string.

sentenceCase("testString");
//=> "Test string"

Transform into a lower case string with underscores between words.

snakeCase("test string");
//=> "test_string"

Other Case Utilities

These functions are not "case" libraries but independent functions, you must install these separately.

Transform a string into title case following English rules.

titleCase("a simple test");
//=> "A Simple Test"

Transform a string by swapping every character from upper to lower case, or lower to upper case.

swapCase("Test String");
//=> "tEST sTRING"

Returns true if the string is lower case only.

isLowerCase("test string");
//=> true

Returns true if the string is upper case only.

isUpperCase("test string");
//=> false

Transforms the string to lower case.

lowerCase("TEST STRING");
//=> "test string"

Transforms the string with the first character in lower cased.

lowerCaseFirst("TEST");
//=> "tEST"

Transforms the string to upper case.

upperCase("test string");
//=> "TEST STRING"

Transforms the string with the first character in upper cased.

upperCaseFirst("test");
//=> "Test"

Transform into a string with random capitalization applied.

spongeCase("Test String");
//=> "tEst stRINg"

Options

  • splitRegexp RegExp used to split into word segments (see example).
  • stripRegexp RegExp used to remove extraneous characters (default: /[^A-Z0-9]/gi).
  • delimiter Value used between words (e.g. " ").
  • transform Used to transform each word segment (e.g. lowerCase).

Split Example

If you find the default split hard to use, you can provide a different one. The example below will change the behavior to word2019 -> word 2019 and minifyURLs -> minify urls:

const options = {
  splitRegexp: /([a-z])([A-Z0-9])/g,
};

Related

License

MIT