package Ġcom . dc 2 f . util Ċ Ċ import Ġcom . ibm . icu . text .* Ċ Ċ /** Ċ Ġ* ĠVery Ġmuch Ġbased Ġon : Ġhttps :// github . com / slug ify / slug ify / blob / master / core / src / main / java / com / github / slug ify / Slug ify . java Ċ Ġ*/ Ċ class ĠSl ug ify ( ĊĠĠĠ Ġprivate Ġval Ġdis allowed Characters : ĠRegex Ġ= ĠRegex ("[ ^ A - Za - z 0 - 9 . ]+ ") Ċ ) Ġ{ ĊĊĠĠĠ Ġcompanion Ġobject Ġ{ ĊĠĠĠĠĠĠĠ Ġprivate Ġconst Ġval ĠASCII Ġ= ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" de - ASCII ; ĠC yr il lic - Latin ; ĠAny - Latin ; ĠLat in - ASCII ; Ġ[^ \\ p { Print }] ĠRemove ; Ġ[' \"] ĠRemove ; ĠAny - Lower " ĊĠĠĠ Ġ} ĊĊĊĠĠĠ Ġprivate Ġval Ġtrans l iterate Ġ= ĠTrans l iterator . getInstance ( ASCII ) ĊĊĠĠĠ Ġfun Ġslug ify ( text : ĠString ): ĠString Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn Ġ( text ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. trim () ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. trans l iterate () ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. hy ph enate () ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. trim ('- ') ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ) ĊĊĠĠĠ Ġ} ĊĊĠĠĠ Ġprivate Ġfun ĠString . trans l iterate () Ġ= Ġtrans l iterate . trans l iterate ( this ) ĊĠĠĠ Ġprivate Ġfun ĠString . hy ph enate () Ġ= Ġthis . replace ( dis allowed Characters , Ġ"- ") Ċ Ċ }