package Ġkr . by delta . ko ala . ok t Ċ Ċ import Ġkr . by delta . ko ala .* Ċ import Ġorg . open k ore ant ext . processor . Open K orean Text Processor Ċ import Ġorg . open k ore ant ext . processor . util . K orean Pos Ċ import Ġorg . spe k framework . spe k 2 . Spe k Ċ Ċ object ĠOK TS plit ter Test Ġ: ĠSpe k ( Splitter Spe k ( get Splitter Ġ= Ġ{ ĠSentence Splitter () Ġ}, ĊĠĠĠĠĠĠĠ Ġoriginal Split Counter Ġ= Ġ{ Ġpara Ġ-> ĊĠĠĠĠĠĠĠĠĠĠĠ ĠOpen K orean Text Processor . split Sent ences ( para ). length () ĊĠĠĠĠĠĠĠ Ġ})) Ċ Ċ object ĠOK T Dictionary Test Ġ: ĠSpe k ( Dict Spe k ( Dictionary , Ġget Tag ger Ġ= Ġ{ ĠT agger () Ġ}, ĊĠĠĠĠĠĠĠ Ġverb On Ġ= Ġfalse , Ġimport Filter Ġ= Ġ{ Ġ! it . is Predicate () Ġ})) Ċ Ċ object ĠOK T Tag Conversion Test Ġ: ĠSpe k ( Tag Conversion Spe k ( from Ġ= Ġ{ Ġit . to Se j ong POS () Ġ}, ĊĠĠĠĠĠĠĠ Ġto Ġ= Ġ{ Ġit . from Se j ong POS () Ġ}, ĊĠĠĠĠĠĠĠ Ġget Mapping Ġ= Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġwhen Ġ( it ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠPOS . NN G Ġ-> ĠlistOf ( Conversion (" No un ")) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠPOS . NN P Ġ-> ĠlistOf ( Conversion (" Pro per No un ")) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠPOS . NN B , ĠPOS . NN M , ĠPOS . NP Ġ-> ĠlistOf ( Conversion (" No un ", Ġto Se j ong Ġ= Ġfalse )) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠPOS . NR Ġ-> ĠlistOf ( Conversion (" Number ")) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠPOS . VV Ġ-> ĠlistOf ( Conversion (" Verb ")) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠPOS . VA Ġ-> ĠlistOf ( Conversion (" Ad ject ive ")) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠPOS . VX , ĠPOS . V CP , ĠPOS . VC N Ġ-> ĠlistOf ( Conversion (" Verb ", Ġto Se j ong Ġ= Ġfalse )) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠPOS . MM Ġ-> ĠlistOf ( Conversion (" Modifier "), ĠConversion (" Determin er ", Ġto Tag ger Ġ= Ġfalse )) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠPOS . MAG Ġ-> ĠlistOf ( Conversion (" Ad verb ")) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠPOS . MA J Ġ-> ĠlistOf ( Conversion (" Ad verb ", Ġto Se j ong Ġ= Ġfalse )) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠPOS . IC Ġ-> ĠlistOf ( Conversion (" Ex clamation ")) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠPOS . J KS , ĠPOS . JK C , ĠPOS . JK G , ĠPOS . JK O , ĠPOS . J KB , ĠPOS . J KV , ĠPOS . JK Q Ġ-> ĠlistOf ( Conversion (" J osa ", Ġto Se j ong Ġ= Ġfalse )) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠPOS . JC Ġ-> ĠlistOf ( Conversion (" Con junction ")) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠPOS . JX Ġ-> ĠlistOf ( Conversion (" J osa ")) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠPOS . EP Ġ-> ĠlistOf ( Conversion (" Pre E omi ")) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠPOS . EF Ġ-> ĠlistOf ( Conversion (" E omi ")) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠPOS . EC , ĠPOS . ET N , ĠPOS . ET M Ġ-> ĠlistOf ( Conversion (" E omi ", Ġto Se j ong Ġ= Ġfalse )) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠPOS . NF , ĠPOS . NV , ĠPOS . X PN Ġ-> ĠlistOf ( Conversion (" Unknown ", Ġto Se j ong Ġ= Ġfalse )) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠPOS . X PV Ġ-> ĠlistOf ( Conversion (" Verb Prefix ")) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠPOS . X SN , ĠPOS . X SV , ĠPOS . X SA , ĠPOS . X SM Ġ-> ĠlistOf ( Conversion (" Suffix ", Ġto Se j ong Ġ= Ġfalse )) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠPOS . X SO Ġ-> ĠlistOf ( Conversion (" Suffix ")) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠPOS . XR Ġ-> Ġempty List () ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠPOS . SF Ġ-> ĠlistOf ( Conversion (" P unctuation ")) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠPOS . SP , ĠPOS . SS , ĠPOS . SE , ĠPOS . SO Ġ-> ĠlistOf ( Conversion (" Others ", Ġto Se j ong Ġ= Ġfalse )) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠPOS . SW Ġ-> ĠlistOf ( Conversion (" Others "), ĠConversion (" Cash Tag ", Ġto Tag ger Ġ= Ġfalse )) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠPOS . NA Ġ-> ĠlistOf ( Conversion (" Unknown ")) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠPOS . SL Ġ-> ĠlistOf ( Conversion (" Foreign "), ĠConversion (" Alpha ", Ġto Tag ger Ġ= Ġfalse )) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠPOS . SH Ġ-> ĠlistOf ( Conversion (" Foreign ", Ġto Se j ong Ġ= Ġfalse )) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠPOS . SN Ġ-> ĠlistOf ( Conversion (" Number ", Ġto Se j ong Ġ= Ġfalse )) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġelse Ġ-> Ġempty List () ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġ})) Ċ Ċ object ĠOK T Tag ger Test Ġ: ĠSpe k ( Tag ger Spe k ( ĊĠĠĠĠĠĠĠ Ġget Tag ger Ġ= Ġ{ ĠT agger () Ġ}, ĊĠĠĠĠĠĠĠ Ġtag Para By Orig Ġ= Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġsentences Ġ= ĠOpen K orean Text Processor . split Sent ences ( it ). as Java (). map Ġ{ Ġit . text () Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġoriginal Ġ= Ġsentences . map Ġ{ Ġs Ġ-> ĠOpen K orean Text Processor . tokenize ( Open K orean Text Processor . normalize ( s )) Ġ} ĊĊĠĠĠĠĠĠĠĠĠĠĠ Ġoriginal . map Ġ{ Ġs Ġ-> ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġs . as Java (). join ToString (" Ġ") Ġ{ Ġit . text () Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. replace ("[ Ġ] { 2 , }". to Regex (), Ġ" ## "). replace (" Ġ", Ġ"+ "). replace (" ## ", Ġ" Ġ") ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġ}, ĊĠĠĠĠĠĠĠ Ġtag Sent By Orig Ġ= Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġoriginal Ġ= ĠOpen K orean Text Processor . tokenize ( Open K orean Text Processor . normalize ( it )). as Java () ĊĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġtag Ġ= Ġoriginal . join ToString (" Ġ") Ġ{ Ġw Ġ-> ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġif Ġ( w . pos () Ġ!= ĠK orean Pos . Space ()) Ġw . text () Ġ+ Ġ"/" Ġ+ Ġw . pos () ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġelse Ġw . text () ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ}. replace ("[ Ġ] { 2 , }". to Regex (), Ġ" ## "). replace (" Ġ", Ġ"+ "). replace (" ## ", Ġ" Ġ") ĊĊĠĠĠĠĠĠĠĠĠĠĠ Ġ"" Ġto Ġtag ĊĠĠĠĠĠĠĠ Ġ}, ĊĠĠĠĠĠĠĠ Ġis Sentence Splitter Implemented Ġ= Ġfalse Ċ ))