package Ġorg . emb ulk . filter . gsub . re placer Ċ Ċ class ĠUpper Case Re placer ( private Ġval Ġpattern : ĠRegex ?) Ġ: ĠText Re placer Ġ{ ĊĠĠĠ Ġconstructor () Ġ: Ġthis ( null ) ĊĊĠĠĠ Ġoverride Ġfun Ġexecute ( text : ĠString ): ĠString Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn Ġpattern ?. let Ġ{ Ġreplace With Pattern ( it , Ġtext )} Ġ?: Ġreplace Whole Text ( text ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġprivate Ġfun Ġreplace With Pattern ( pattern : ĠRegex , Ġtext : ĠString ): ĠString Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn Ġpattern . replace ( text , Ġ{ Ġmatch Result Ġ-> Ġmatch Result . value . toUpperCase () Ġ}) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġprivate Ġfun Ġreplace Whole Text ( text : ĠString ): ĠString Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn Ġtext . toUpperCase () ĊĠĠĠ Ġ} Ċ } ĊĊ