package Ġcom . may abot . nlp . segment Ċ Ċ import Ġcom . may abot . nlp . M yn l ps Ċ import Ġcom . may abot . nlp . segment . lexer . per ce ptr on . Per ce ptr ons Segment Service Ċ import Ġorg . junit . Test ĊĊĊ Ċ class ĠC ws Test Ġ{ ĊĊĠĠĠ Ġval Ġc ws Ġ= ĠM yn l ps . instance Of ( Per ce ptr ons Segment Service :: class . java ) ĊĊĠĠĠ Ġ@ Test ĊĠĠĠ Ġfun Ġtest 2 (){ Ċ // ĠĠĠĠĠĠĠ Ġprintln ( c ws . split Word (" æ£ĢæŁ¥ settings . xml ä¸ŃçļĦ éĺ¿ éĩĮ äºĳ ä»ĵåºĵ åľ°åĿĢ æŃ£ç¡® ")) Ċ // ĠĠĠĠĠĠĠ Ġprintln (" æ£ĢæŁ¥ settings . xml ä¸ŃçļĦ éĺ¿ éĩĮ äºĳ ä»ĵåºĵ åľ°åĿĢ æŃ£ç¡® ". lexer ()) Ċ // ĊĠĠĠĠĠĠĠ Ġprintln ( Lex ers . per ce ptr on Builder (). build (). scan (" æ£ĢæŁ¥ settings . xml ä¸ŃçļĦ éĺ¿ éĩĮ äºĳ ä»ĵåºĵ åľ°åĿĢ æŃ£ç¡® ")) ĊĊĊĠĠĠĠĠĠĠ Ġval Ġbu il r der Ġ= ĠLex ers . per ce ptr on Builder () ĊĠĠĠĠĠĠĠ Ġval Ġlexer Ġ= Ġbu il r der Ġ// Ġcore åĪĨ è¯į æŀĦå»º åĻ¨ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. with Pos () Ġ// Ġ å¼ĢåĲ¯ è¯į æĢ§ ĊĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. with N er () ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. with Custom Dictionary () ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ// ĠĠĠ Ġ. keep O ri Char Output () Ċ // ĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. with Person Name () Ġ// Ġ å¼ĢåĲ¯ äºº åĲį ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. build () Ġ// ĠåĪĽå»º å®ļ åĪ¶ è¯į æ³ķ åĪĨæŀĲ å¯¹è±¡ Ċ // ĠĠĠĠĠĠĠ Ġval Ġservice Ġ= ĠM yn l ps . instance Of ( C ws Service :: class . java ) Ċ // ĠĠĠĠĠĠĠ Ġservice . per ce ptr on . learn (" éĺ¿ éĩĮ äºĳ Ġ ä»ĵåºĵ ") ĊĠĠĠĠĠĠĠ Ġval Ġbuffer Ġ= Ġ" æ£ĢæŁ¥ settings . xml ä¸ŃçļĦ éĺ¿ éĩĮ äºĳ ä»ĵåºĵ åľ°åĿĢ æŃ£ç¡® " ĊĠĠĠĠĠĠĠ Ġval Ġsentence Ġ= Ġlexer . scan ( buffer ) ĊĠĠĠĠĠĠĠ Ġprintln ( sentence . toList ()) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Test ĊĠĠĠ Ġfun Ġtest C ws Service () Ġ{ ĊĊĠĠĠĠĠĠĠ Ġval Ġtext Ġ= Ġ""" ĊĠĠĠĠĠĠĠĠĠĠĠĠ 2 0 1 7 å¹´ 2 æľĪ 5 æĹ¥ åħĪ åĲİ è§Ĩ å¯Ł äºĨ åįİ é ĳ « æµ· æ¬ £ æ¥¼ å® ĩ åħļ å»º ï¼Ī ç¾¤ åĽ¢ ï¼ī æľįåĬ¡ ç«Ļ åĴĮ æ±Ł éĺ ´ å¸Ĥ é¡º å¤© æĿ ĳ é¡¹çĽ® ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ åįĹ æµ· åľ° åĮº çļĦ èĪª è¡Į åĴĮ é£ŀ è¶Ĭ èĩªçĶ± æł¹ æľ¬ ä¸įåŃĺåľ¨ éĹ®é¢ĺ ï¼Į æ¯ı å¹´ 1 0 ä¸ĩ ä½Ļ èī ĺ åĲĦ åĽ½ åĲĦ ç±» èĪ ¹ åıª èĥ½å¤Ł åľ¨ åįĹ æµ· å®īåħ¨ ãĢģ é¡º åĪ© åľ° éĢļ è¡Į ï¼Į èĢĮ ä¸ŃåĽ½ åįĹ æ² Ļ åĴĮ è¥¿ æ² Ļ ç¾¤ å² Ľ è¿ľ ç¦» åĽ½ éĻħ èĪª éģĵ ãĢĤ ä½Ĩ åľ¨ ç¾İ æĸ¹ çľ¼ éĩĮ è¿Ļ ä¸į åı« èĪª è¡Į èĩªçĶ± ï¼Į ç¾İ æĸ¹ æīĢ è° ĵ âĢľ èĪª è¡Į èĩªçĶ± è¡Į åĬ¨ âĢĿï¼Į æĺ¯ æĮīçħ§ èĩªå·± å¯¹ åĽ½ éĻħ æ³ķ çļĦ åįķ æĸ¹ éĿ¢ è§£éĩĬ ï¼Į æ´¾ åĩº åĨĽ èĪ ° æĮ ĳ æĪĺ åħ¶å®ĥ åĽ½å®¶ å¯¹ æµ· ä¸Ĭ é¢Ĩ åľŁ ä¸» æĿĥ åĴĮ æµ· æ´ ĭ æĿĥ çĽĬ çļĦ æīĢ è° ĵ âĢľ è¿ĩ åº¦ âĢĿ ä¸» å¼ł åĴĮ è¡Į ä½¿ ãĢĤ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ æĶ¾ çĿĢ å®½ éĺ Ķ çļĦ åįĹ æµ· åĽ½ éĻħ èĪª éģĵ ä¸į èµ° ï¼Į ç¾İåĽ½ åĨĽ èĪ ° åį´ å± ¡ æ¬¡ è¿Ľåħ¥ ä¸ŃåĽ½ é© » å®Ī çļĦ åįĹ æµ· å² Ľ ç¤ ģ 1 2 æµ· éĩĮ ä¹ĭ åĨħ å®£ ç¤º âĢľ èĪª è¡Į èĩªçĶ± âĢĿï¼Į å®ŀéĻħ ä¸Ĭ æĺ¯ åĪ« æľī çĶ¨ å¿ĥ ãĢĤ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ ç¾İåĽ½ å½ĵ åľ° æĹ¶éĹ´ æĺŁ æľŁ äºĮ ï¼Į è° · æŃĮ æĹ Ĺ ä¸ĭ æµģ åªĴ ä½ĵ è§Ĩé¢ĳ ç½ĳç«Ļ YouTube åľ¨ æĻ ļ ä¸Ĭ 6 çĤ¹ å·¦ åı³ éĻ · åħ¥ åħ¨ çĲĥ æĢ§ å® ķ æľº çĬ¶æĢģ ï¼Į çĽ´ åĪ° 7 çĤ¹ 2 0 åĪĨ æīį æģ ¢å¤į åĬŁèĥ½ ãĢĤ ĊĠĠĠĠĠĠĠĠĠĠĠ ĠYouTube éĴĪå¯¹ çĶ¨æĪ· åıĳ è¡¨ å£°æĺİ ç§° : âĢľ æĦŁ è°¢ ä½ł ä»¬ æĬ¥ åĳĬ YouTube ãĢģ YouTube ĠTV åĴĮ YouTube ĠMusic æĹłæ³ķ è®¿éĹ® çļĦéĹ®é¢ĺ ãĢĤ æĪĳä»¬ æŃ£åľ¨ åĬ ª åĬĽ è§£åĨ³ è¿Ļä¸ª éĹ®é¢ĺ ï¼Į ä¸Ģ æĹ ¦ ä¿® å¥½ ï¼Į æĪĳä»¬ ä¼ļ éĢļçŁ¥ ä½ł ä»¬ ãĢĤ å¯¹äºİ çĶ± æŃ¤ éĢł æĪĲ çļĦ ä¸į ä¾¿ ï¼Į æĪĳä»¬ æ·± è¡¨ æŃ ī æĦı ï¼Į å¹¶ å°Ĩ ç»§ç»Ń ä¿ĿæĮģ æĽ´æĸ° ãĢĤ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ å¿ĥ èĤ Į ä¸Ĭ åĬ¨ âĢľ å¿ĥ æľº âĢĿ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ å¿ĥ èĤ Į ç»Ĩ èĥ ŀ æĺ¯ å¿ĥ èĦ ı æ³ µ è¡ Ģ çļĦ åĬ¨ åĬĽ æĿ¥ æºĲ ï¼Į å¿ĥ èĤ Į ç»Ĩ èĥ ŀ åĩº éĹ®é¢ĺ åı¯èĥ½ä¼ļ å¯¼èĩ´ ä¸¥ éĩį çĸ ¾ çĹħ çĶļ èĩ³ æŃ» äº ¡ ãĢĤ åĽłæŃ¤ ï¼Į å¦Ĥæŀľ èĥ½ è®© å¿ĥ èĦ ı ä¸Ń éķ¿ åĩº æĸ°çļĦ å¿ĥ èĤ Į ç»Ĩ èĥ ŀ ï¼Į æĽ¿æį¢ æİī æľī éĹ®é¢ĺ çļĦ ç»Ĩ èĥ ŀ ï¼Į ä»¥ æŃ¤ ä¿® å¤į å¿ĥ èĦ ı ï¼Į æĹł çĸĳ æĺ¯ åĮ» åŃ¦ ä¸ĬçļĦ ä¸Ģ å¤§ çªģ çł´ ãĢĤ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ å®ī éŁ ¦ èĲ ¨ å°± åľ¨ å¿ĥ èĤ Į ä¸Ĭ åĬ¨ èµ· äºĨ âĢľ å¿ĥ æľº âĢĿãĢĤ 2 0 0 1 å¹´ ï¼Į ä»ĸ è¿ĺ åľ¨ çº ½ çº¦ åĮ» åŃ¦ éĻ¢ å·¥ä½ľ æĹ¶ ï¼Į åľ¨ èĭ± åĽ½ åŃ¦ æľ¯ åĪ Ĭ çī© ãĢĬ èĩª çĦ¶ ãĢĭ ä¸Ĭ åıĳ è¡¨ ä¸Ģ ç¯ĩ è®º æĸĩ ï¼Į è¯´ åı¯ä»¥ çĶ¨æĿ¥ èĩª éª ¨ é« ĵ çļĦ c - kit å¹² ç»Ĩ èĥ ŀ ä½¿ å¿ĥ èĤ Į åĨį çĶŁ ãĢĤ éļı åĲİ ï¼Į ä»ĸ åıĪ äºİ 2 0 0 3 å¹´ åľ¨ ç¾İåĽ½ ãĢĬ ç»Ĩ èĥ ŀ ãĢĭ æĿĤ å¿Ĺ åıĳ æĸĩ è¯´ ä¸įéľĢè¦ģ éª ¨ é« ĵ å¹² ç»Ĩ èĥ ŀ ï¼Į ä½¿çĶ¨ æĪĲ çĨ Ł çļĦ å¿ĥ èĦ ı å¹² ç»Ĩ èĥ ŀ å°± èĥ½ ä¿® å¤į å¿ĥ èĤ Į ãĢĤ æľī çłĶç©¶ äººåĳĺ æĽ ¾ å¯¹ ä»ĸ çļĦ è¿Ļ ä¸¤ é¡¹ çłĶç©¶ æĪĲ æŀľ æıĲ åĩº è´¨ çĸĳ ãĢĤ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ æĪĳ è¦ģ è´Ń ä¹° ä¸Ģä¸ª åıĮ å±Ĥ èĬ Ŀ å£« æ±ī åł ¡ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ æĪĳ è¦ģ è´Ń ä¹° ä¸Ģä¸ª åıĮ å±Ĥ çī Ľ èĤ ī æ±ī åł ¡ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ è¿Ļæĺ¯ ä½ł ä¹° çļĦ ç¬¬ åĩł å¥Ĺ æĪ¿ åŃĲ ï¼Į è¿Ļ å°±æĺ¯ æĢ» ç»Ł å¥Ĺ æĪ¿ äºĨ ï¼Į èĬ Ŀ å£« æ±ī åł ¡ æĺ¯ ä»Ģä¹Ī åĳ³ éģĵ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġå°ı åŃ© å¤ļ å¤§åŃ¦ è·³ èĪ ŀ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ å¤ĸ åľ° äºº çĶŁ åŃ© åŃĲ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ è¢« æĭ Ĩ è¿ ģ äºº ä¸º ä½İ æĶ¶ åħ¥ ĊĠĠĠĠĠĠĠ Ġ""" . trim Indent () ĊĊĠĠĠĠĠĠĠ Ġtext . lines (). forEach Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġprintln ( it Ġ+ Ġ" Ġ\ n " Ġ+ Ġc ws . split Word ( it ). join ToString ( separator Ġ= Ġ" Ġ/ Ġ")) ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} ĊĊĊĠĠĠ Ġ@ Test ĊĠĠĠ Ġfun Ġtest Learn () Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġtxt Ġ= Ġ" å°ı åŃ© å¤ļ å¤§åŃ¦ è·³ èĪ ŀ " ĊĠĠĠĠĠĠĠ ĠM yn l ps . instance Of ( Per ce ptr ons Segment Service :: class . java ). per ce ptr on . learn ("" Ġ+ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ" å¤ļ å¤§ Ġ åŃ¦ ") ĊĠĠĠĠĠĠĠ Ġprintln ( Lex ers . per ce ptr on Builder (). build (). scan ( txt )) ĊĠĠĠ Ġ} Ċ } Ċ