All in one function for transforming word casings
๐ฆ 275B gziped
npm install --save casex
import casex from 'casex';
casex(text, pattern);
For casex any character that is not a letter (accents are not letters for javascript) is a breakpoint.
In this example: Ca_se
C
: first letter of the first worda
: second and subsequent letters of the first word_
: anything between the first two and last two letters isglue
and will be repeted between wordss
: first letter of the second and subsequent wordse
: second and subsequent letters of the second and subsequent words
Confusing? Check out the demo and/or examples below. I'm sure you'll get the hang of it :)
Note: You could use any other letters to describe, such as aa$aa
or na_me
. What matters is that it takes the first two and last two letters for checking capitalization and whatever is in the middle is "glue".
For these examples I'll use the text i_am the-real JohnDoe
lowercase
- Pattern: case
- Output: iamtherealjohndoe
UPPERCASE
- Pattern: CASE
- Output: IAMTHEREALJOHNDOE
snake_case
- Pattern: ca_se
- Output: i_am_the_real_john_doe
spinal-case
- Pattern: ca-se
- Output: i-am-the-real-john-doe
camelCase
- Pattern: caSe
- Output: iAmTheRealJohnDoe
UpperCamelCase
- Pattern: CaSe
- Output: IAmTheRealJohnDoe
Sentence case
- Pattern: Ca se
- Output: I am the real john doe
Title Case
- Pattern: Ca Se
- Output: I Am The Real John Doe
casex is part of a scaffolding tool I'm building and I decided to publish it separetely. The scaffolding tool will be linked here once it's out :)