Description
Small utility library for generating speaking URLs.
Usage Examples
Slugify is published in the Maven Central Repository: Click here
Basic
final Slugify slg = Slugify.builder().build(); final String result = slg.slugify("Hello, world!"); // result: hello-world
Underscore Separator
final Slugify slg = Slugify.builder().underscoreSeparator(true).build(); final String result = slg.slugify("Hello, world!"); // result: hello_world
Case Sensitive
final Slugify slg = Slugify.builder().lowerCase(false).build(); final String result = slg.slugify("Hello, world!"); // result: Hello-world
Specifying a Locale
final Slugify slg = Slugify.builder().locale(Locale.GERMAN).build(); final String result = slg.slugify("ä"); // result: ae
Custom Replacements
final Slugify slg = Slugify.builder() // provided as a map .customReplacements(Map.of("Foo", "Hello", "bar", "world")) // provided as single key-value .customReplacement("Foo", "Hello") .customReplacement("bar", "world") .build(); final String result = slg.slugify("Foo, bar!"); // result: hello-world
Transliteration
Requirements
Gradle 6+
For Gradle 6+ users there's a feature variant which can be used as follows:
capabilities {
requireCapability('com.github.slugify:slugify-transliterator')
}For more information about feature variants please check the section Modeling feature variants and optional dependencies of gradle's user guide.
Other
Manually add the optional dependency com.ibm.icu:icu4j to your project.
Usage Example
final Slugify slg = Slugify.builder().transliterator(true).build(); final String result = slg.slugify("Б"); // result: b