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.
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.
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.
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)
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);
All contributions (no matter if small) are always welcome.