String Extension methods to convert PascalCasing to other_casings, taking into account abbreviations.
Pascal case is a naming convention where the first letter of each word in a variable is capitalized, while the remaining letters are in lowercase. Examples:
- PascalCase
- SomeUTPCable
using NameCaser;
var simple = "SomeSimpleString";
Console.WriteLine(simple.ToCamelCase()); // someSimpleString
Console.WriteLine(simple.ToSnakeCase()); // some_simple_string
Console.WriteLine(simple.ToKebabCase()); // some-simple-string
Console.WriteLine(simple.ToSpaceCase()); // Some simple string
Console.WriteLine(simple.ToConstantCase()); // SOME_SIMPLE_STRING
Console.WriteLine(simple.ToTrainCase()); // Some-Simple-String
var ioDriver = "IODriver";
Console.WriteLine(ioDriver.ToCamelCase()); // ioDriver
Console.WriteLine(ioDriver.ToSnakeCase()); // io_driver
Console.WriteLine(ioDriver.ToKebabCase()); // io-driver
Console.WriteLine(ioDriver.ToSpaceCase()); // IO driver
Console.WriteLine(ioDriver.ToConstantCase()); // IO_DRIVER
Console.WriteLine(ioDriver.ToTrainCase()); // IO-Driver
var someUTPCable = "SomeUTPCable";
Console.WriteLine(someUTPCable.ToCamelCase()); // someUTPCable
Console.WriteLine(someUTPCable.ToSnakeCase()); // some_utp_cable
Console.WriteLine(someUTPCable.ToKebabCase()); // some-utp-cable
Console.WriteLine(someUTPCable.ToSpaceCase()); // Some UTP cable
Console.WriteLine(someUTPCable.ToConstantCase()); // SOME_UTP_CABLE
Console.WriteLine(someUTPCable.ToTrainCase()); // Some-UTP-Cable
//Bonus: ToPascal() Method
var somePhrase = " - Some UTP cable "
Console.WriteLine(somePhrase.ToPascalCase()); // SomeUTPCable
Console.WriteLine(somePhrase.ToPascalCase()
.ToKebabCase()); // some-utp-cable
Camel Case is actually inspired from animal “Camel”. Where first word will be small letters and from second word, first character will be captialized like camelCase.
Camel Case is often used for property Naming in typescript
Snake Case is naming with words separated by _ ( underscore ) and all small letters
Snake Case is often used for file Naming
Kebab Case is naming with words separated by — ( hyphen ) with all small letters
Kebab Case is often used for CSS naming
Space case is naming with words separated by ' ' ( space ) and all small letters
Space Case is often used auto generating comments
Constant case is naming with all letters Capitalized but the words are separated by _ ( underscore)
Constant case is often used for constants and macros
Train Case is naming with first character of every word of name is Capitalised and words are connected with — ( hyphen ).
Train Case is also often used for file Naming