string-notation
Convert between different string notations commonly found in programming. Useful, for example, to build identifiers when generating code. Also includes notations to build valid Java type or member names.
API Documentation
Notations
We support the following notations:
- General Programming
- LowerCamelCase, e.g.
thisIsMyString
- UpperCamelCase, e.g.
ThisIsMyString
- SnakeCase, e.g.
this_is_MY_String
- ScreamingSnakeCase, e.g.
THIS_IS_MY_STRING
- LowerCamelCase, e.g.
- Java
- JavaMemberName, e.g.
thisIsMyString
- JavaTypeName, e.g.
ThisIsMyString
- JavaConstantName, e.g.
THIS_IS_MY_STRING
- JavaPackageName, e.g.
this.is.MY.String
- JavaPackagePart, e.g.
thisismystring
- JavaMemberName, e.g.
- Miscellaneous
- NormalWords, e.g.
this is MY String
- NormalWords, e.g.
Usage
string-notation
converts Strings from their notation into a Word, which is a notation-agnostic representation. Words can then be transformed into Strings in a notation again.
Kotlin
import de.joshuagleitze.stringnotation.LowerCamelCase
import de.joshuagleitze.stringnotation.ScreamingSnakeCase
import de.joshuagleitze.stringnotation.fromNotation
// myVariable -> MY_VARIABLE
"myVariable".fromNotation(LowerCamelCase).toNotation(ScreamingSnakeCase)
import de.joshuagleitze.stringnotation.JavaTypeName
import de.joshuagleitze.stringnotation.NormalWords
import de.joshuagleitze.stringnotation.fromNotation
// 1 Type Name 4 You! -> TypeName4You
"1 Type Name 4 You!".fromNotation(NormalWords).toNotation(JavaTypeName)
Java
import de.joshuagleitze.stringnotation.LowerCamelCase;
import de.joshuagleitze.stringnotation.UpperCamelCase;
import static de.joshuagleitze.stringnotation.StringToWord.fromNotation;
// myVariable -> MY_VARIABLE
fromNotation("myVariable", UpperCamelCase.INSTANCE).toNotation(LowerCamelCase.INSTANCE);
import de.joshuagleitze.stringnotation.JavaTypeName;
import de.joshuagleitze.stringnotation.NormalWords;
import static de.joshuagleitze.stringnotation.StringToWord.fromNotation;
// 1 Type Name 4 You! -> TypeName4You
fromNotation("1 Type Name 4 You!", NormalWords.INSTANCE).toNotation(JavaTypeName.INSTANCE);
Contributions welcome
All contributions (no matter if small) are always welcome.