package Ġio . github . tree ch . common . ext . util Ċ Ċ import Ġandroid . os . Build Ċ import Ġandroid . text . Html Ċ import Ġandroid . text . Sp anned Ċ import Ġandroidx . annotation . Requires Api Ċ import Ġcom . google . gson . Gson Ċ import Ġjava . util . regex . Pattern Ċ Ċ /** Ċ Ġ* Ġæĺ¯åĲ¦ ä¸º æīĭæľº åı· ĠĠ 0 å¼Ģ å¤´ Ġ 1 2 å¼Ģ å¤´ çļĦ ä¸į æĶ¯æĮģ Ċ Ġ*/ Ċ fun ĠString ?. is Phone (): ĠBoolean Ġ{ ĊĠĠĠ Ġreturn Ġthis ?. let Ġ{ ĊĠĠĠĠĠĠĠ ĠPattern . matches ( it , Ġ" 0 ?( 1 3 | 1 4 | 1 5 | 1 6 | 1 7 | 1 8 | 1 9 )[ 0 - 9 ]{ 9 }") ĊĠĠĠ Ġ} Ġ?: Ġlet Ġ{ ĊĠĠĠĠĠĠĠ Ġfalse ĊĠĠĠ Ġ} Ċ } Ċ Ċ /** Ċ Ġ* Ġæĺ¯åĲ¦ ä¸º åº§ æľº åı· Ċ Ġ*/ Ċ fun ĠString ?. is Tel (): ĠBoolean Ġ{ ĊĠĠĠ Ġreturn Ġthis ?. let Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġmatcher 1 Ġ= ĠPattern . matches ("^ 0 ( 1 0 | 2 [ 0 - 5 | 7 8 9 ] |[ 3 - 9 ]\\ d { 2 }) \\ d { 7 , 8 }\ $", Ġthis ) ĊĠĠĠĠĠĠĠ Ġval Ġmatcher 2 Ġ= ĠPattern . matches ("^ 0 ( 1 0 | 2 [ 0 - 5 | 7 8 9 ] |[ 3 - 9 ]\\ d { 2 }) - \\ d { 7 , 8 }$ ", Ġthis ) ĊĠĠĠĠĠĠĠ Ġval Ġmatcher 3 Ġ= ĠPattern . matches ("^ 4 0 0 \\ d { 7 , 8 }$ ", Ġthis ) ĊĠĠĠĠĠĠĠ Ġval Ġmatcher 4 Ġ= ĠPattern . matches ("^ 4 0 0 - \\ d { 7 , 8 }$ ", Ġthis ) ĊĠĠĠĠĠĠĠ Ġval Ġmatcher 5 Ġ= ĠPattern . matches ("^ 8 0 0 \\ d { 7 , 8 }$ ", Ġthis ) ĊĠĠĠĠĠĠĠ Ġval Ġmatcher 6 Ġ= ĠPattern . matches ("^ 8 0 0 - \\ d { 7 , 8 }$ ", Ġthis ) ĊĠĠĠĠĠĠĠ Ġreturn Ġmatcher 1 Ġ|| Ġmatcher 2 Ġ|| Ġmatcher 3 Ġ|| Ġmatcher 4 Ġ|| Ġmatcher 5 Ġ|| Ġmatcher 6 ĊĠĠĠ Ġ} Ġ?: Ġlet Ġ{ ĊĠĠĠĠĠĠĠ Ġfalse ĊĠĠĠ Ġ} Ċ } Ċ Ċ /** Ċ Ġ* Ġæĺ¯åĲ¦ ä¸º éĤ®ç®± åı· Ċ Ġ*/ Ċ fun ĠString ?. is Email (): ĠBoolean Ġ{ ĊĠĠĠ Ġreturn Ġthis ?. let Ġ{ ĊĠĠĠĠĠĠĠ ĠPattern . matches ( this , Ġ"^ \\ w + ([- + .] \\ w + )* @ \\ w + ([ -. ]\\ w + )* \\. \\ w + ([ -. ]\\ w + )* \$ ") ĊĠĠĠ Ġ} Ġ?: Ġlet Ġ{ ĊĠĠĠĠĠĠĠ Ġfalse ĊĠĠĠ Ġ} Ċ } Ċ Ċ /** Ċ Ġ* Ġå°Ĩ å¯¹è±¡ è½¬ ä¸º JSON åŃĹç¬¦ä¸² Ċ Ġ*/ Ċ fun ĠAny ?. toJson (): ĠString Ġ{ ĊĠĠĠ Ġreturn ĠGson (). toJson ( this ) Ċ } Ċ Ċ @ Requires Api ( Build . VERSION _ CODES . N ) Ċ fun ĠString . to Html ( flag : ĠInt Ġ= ĠHtml . FROM _ HTML _ MODE _ LEG ACY ): ĠSp anned Ġ{ ĊĠĠĠ Ġreturn Ġif Ġ( android . os . Build . VERSION . SDK _ INT Ġ>= Ġandroid . os . Build . VERSION _ CODES . N ) Ġ{ ĊĠĠĠĠĠĠĠ ĠHtml . from Html ( this , Ġflag ) ĊĠĠĠ Ġ} Ġelse Ġ{ ĊĠĠĠĠĠĠĠ ĠHtml . from Html ( this ) ĊĠĠĠ Ġ} Ċ }