package Ġme . ar asp le . mc . tr ho log ram . module . conf Ċ Ċ /** Ċ Ġ* Ġ@ author ĠAr asp le Ċ Ġ* Ġ@ date Ġ 2 0 2 1 / 2 / 1 1 Ġ 1 7 : 2 6 Ċ Ġ*/ Ċ enum Ġclass ĠProperty ( val Ġregex : ĠRegex , Ġval Ġgroup : ĠInt ) Ġ{ ĊĊĠĠĠ ĠOFFSET ("\\ { offset ? [: = ] Ġ? ([ 0 - 9 . ]+ )} "), ĊĊĠĠĠ ĠUPDATE ("\\ {( update | refresh )? [: = ] Ġ? ([ 0 - 9 ]+ )} ", Ġ 2 ), ĊĊĠĠĠ ĠITEM ("\\ { items ? [: = ] Ġ? (. + )} "); ĊĊĠĠĠ Ġconstructor ( regex : ĠString , Ġgroup : ĠInt Ġ= Ġ 1 ) Ġ: Ġthis (" (? i )$ regex ". to Regex (), Ġgroup ) ĊĊĠĠĠ Ġcompanion Ġobject Ġ{ ĊĊĠĠĠĠĠĠĠ Ġfun Ġfrom ( string : ĠString ): ĠPair < String , ĠMap < Property , ĠString >> Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġvar Ġcontent Ġ= Ġstring ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġmap Ġ= Ġvalues (). map NotNull Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġvalue Ġ= Ġit . regex . find ( content )?. group Values ?. get ( it . group ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġvalue ?. let Ġ{ Ġv Ġ-> ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġcontent Ġ= Ġcontent . replace ( it . regex , Ġ"") ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġit Ġto Ġv ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ}. toMap () ĊĊĠĠĠĠĠĠĠĠĠĠĠ Ġreturn Ġcontent Ġto Ġmap ĊĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠ Ġ} Ċ Ċ }