@ file : Jvm Name (" Strings ") Ċ Ċ package Ġcom . j tsch w artz . ch ore core Ċ Ċ import Ġjava . util . regex . Pattern Ċ import Ġkotlin . math . abs Ċ Ċ /** Ċ Ġ* Ġ ĠSpl its Ġthis Ġchar Ġsequence Ġto Ġa Ġlist Ġof Ġstrings Ġaround Ġoccurrences Ġof Ġthe Ġspecified Ġdelimiter . Ċ Ġ* Ċ Ġ* Ġ Ġ@ author ĠJ acob ĠSch w artz Ċ Ġ* Ġ Ġ@ param Ġdelimiter ĠString Ġto Ġsplit Ġon . Ċ Ġ*/ Ċ Ċ operator Ġfun ĠString . div ( delimiter : ĠString ): ĠList < String > Ġ= Ġthis . split ( delimiter ) Ċ Ċ /** Ċ Ġ* Ġ ĠSpl its Ġthis Ġchar Ġsequence Ġto Ġa Ġlist Ġof Ġstrings Ġaround Ġoccurrences Ġof Ġthe Ġspecified Ġdelimiter . Ċ Ġ* Ċ Ġ* Ġ Ġ@ author ĠJ acob ĠSch w artz Ċ Ġ* Ġ Ġ@ param Ġdelimiter ĠChar Ġto Ġsplit Ġon . Ċ Ġ*/ Ċ Ċ operator Ġfun ĠString . div ( delimiter : ĠChar ): ĠList < String > Ġ= Ġthis . split ( delimiter ) Ċ Ċ /** Ċ Ġ* Ġ ĠSpl its Ġthis Ġchar Ġsequence Ġaround Ġmatches Ġof Ġthe Ġgiven Ġregular Ġexpression . Ċ Ġ* Ċ Ġ* Ġ Ġ@ author ĠJ acob ĠSch w artz Ċ Ġ* Ġ Ġ@ param Ġdelimiter ĠRegex Ġto Ġsplit Ġon . Ċ Ġ*/ Ċ Ċ operator Ġfun ĠString . div ( delimiter : ĠRegex ): ĠList < String > Ġ= Ġthis . split ( delimiter ) Ċ Ċ /** Ċ Ġ* Ġ ĠSpl its Ġthis Ġchar Ġsequence Ġaround Ġmatches Ġof Ġthe Ġgiven Ġregular Ġexpression . Ċ Ġ* Ċ Ġ* Ġ Ġ@ author ĠJ acob ĠSch w artz Ċ Ġ* Ġ Ġ@ param Ġdelimiter ĠPattern Ġto Ġsplit Ġon . Ċ Ġ*/ Ċ Ċ operator Ġfun ĠString . div ( delimiter : ĠPattern ): ĠList < String > Ġ= Ġthis . split ( delimiter ) Ċ Ċ /** Ċ Ġ* ĠD rops Ġthe Ġspecified Ġnumber Ġof Ġcharacters Ċ Ġ* Ċ Ġ* Ġ Ġ@ author ĠJ acob ĠSch w artz Ċ Ġ* Ġ Ġ@ param Ġcount ĠNumber Ġof Ġcharacters Ġto Ġbe Ġdropped Ġfrom Ġthe Ġbeginning Ġif Ġpositive , Ġelse Ġfrom Ġthe Ġend . Ċ Ġ*/ Ċ Ċ operator Ġfun ĠString . minus ( count : ĠInt ): ĠString Ġ= Ġ( if Ġ( count Ġ> Ġ 0 ) Ġ:: drop Ġelse Ġ:: drop Last )( abs ( count )) Ċ Ċ /** Ċ Ġ* Ġ ĠTri ms Ġwhitespace Ġfrom Ġthe Ġbeginning Ġand Ġend Ġof Ġthe ĠString . Ċ Ġ* Ċ Ġ* Ġ Ġ@ author ĠJ acob ĠSch w artz Ċ Ġ*/ Ċ Ċ operator Ġfun ĠString . unary Minus (): ĠString Ġ= Ġthis . trim () Ċ Ċ /** Ċ Ġ* Ġ ĠTri ms Ġwhitespace Ġfrom Ġthe Ġbeginning Ġand Ġend Ġof Ġthe ĠString . Ċ Ġ* Ċ Ġ* Ġ Ġ@ author ĠJ acob ĠSch w artz Ċ Ġ*/ Ċ Ċ operator Ġfun ĠString . dec (): ĠString Ġ= Ġthis . trim () Ċ Ċ /** Ċ Ġ* Ġ ĠRe places Ġthe ĠKotlin Ġdeprecated Ġcapital ize Ġmethod Ġto Ġcapital ize Ġthe Ġfirst Ġletter Ġof Ġa ĠString . Ċ Ġ* Ċ Ġ* Ġ Ġ@ author ĠJ acob ĠSch w artz Ċ Ġ*/ Ċ Ċ fun ĠString . capitalize (): ĠString Ġ Ġ= Ġthis . replace First Char Ġ{ Ġc Ġ-> Ġc . uppercase () Ġ} Ċ Ċ /** Ċ Ġ* Ġ ĠSpl its Ġa ĠString Ġon Ġperiods Ġ( i . e . Ġinto Ġindividual Ġsentences ) Ġand Ġmakes Ġeach Ġsentence Ġentirely Ġlowercase Ġexcept Ġfor Ġthe Ġfirst Ġcharacter Ġof Ġthe Ġfirst Ġword . Ċ Ġ* Ċ Ġ* Ġ Ġ@ author ĠJ acob ĠSch w artz Ċ Ġ*/ Ċ Ċ fun ĠString . sentence Case (): ĠString Ġ= Ġthis . lowercase (). split ("\\ .\\ s +". to Regex ()). join ToString ( separator Ġ= Ġ". Ġ") Ġ{ Ġit . capitalize () Ġ}. trim () Ċ Ċ /** Ċ Ġ* Ġ ĠUses Ġa Ġmap Ġto Ġperform Ġa Ġreplacement Ġon Ġeach ĠKey - Value Ġpair Ġwhere Ġthe ĠKey Ġis Ġthe ĠRegex Ġfor Ġthe Ġsub strings Ġwhich Ġis Ġto Ġbe Ġreplaced Ġby Ġthe ĠValue . Ċ Ġ* Ċ Ġ* Ġ Ġ@ param Ġmap ĠKey < Regex > ĠValue < String > Ġpair Ġby Ġwhich Ġto Ġreplace Ġthe ĠKey Ġwith Ġthe ĠValue Ċ Ġ* Ġ Ġ@ author ĠJ acob ĠSch w artz Ċ Ġ*/ Ċ Ċ fun ĠString . replace By Regex Map ( map : ĠMap < Regex , ĠString >): ĠString Ġ{ Ċ ĉ return Ġmap . entries . fold ( this ) Ġ{ Ġacc , Ġentry Ġ-> Ċĉ ĉ acc . replace ( entry . key , Ġentry . value ) Ċ ĉ } Ċ } Ċ Ċ /** Ċ Ġ* Ġ ĠUses Ġa Ġmap Ġto Ġperform Ġa Ġreplacement Ġon Ġeach ĠKey - Value Ġpair Ġwhere Ġthe ĠKey Ġis Ġthe Ġsubstring Ġthat Ġshould Ġbe Ġreplaced Ġby Ġthe ĠValue . Ċ Ġ* Ċ Ġ* Ġ Ġ@ param Ġmap ĠKey < String > ĠValue < String > Ġpair Ġby Ġwhich Ġto Ġreplace Ġthe ĠKey Ġwith Ġthe ĠValue Ċ Ġ* Ġ Ġ@ author ĠJ acob ĠSch w artz Ċ Ġ*/ Ċ Ċ fun ĠString . replace By Map ( map : ĠMap < String , ĠString >): ĠString Ġ= Ġthis . replace By Regex Map ( map . map Keys Ġ{ Ġit . key . to Regex () Ġ}) Ċ