File tree 2 files changed +15
-1
lines changed
2 files changed +15
-1
lines changed Original file line number Diff line number Diff line change @@ -375,7 +375,8 @@ namespace kiwi
375
375
(tokens[i - 1 ].tag == POSTag::so
376
376
|| tokens[i - 1 ].tag == POSTag::sw
377
377
|| tokens[i - 1 ].tag == POSTag::sp
378
- || tokens[i - 1 ].tag == POSTag::se)
378
+ || tokens[i - 1 ].tag == POSTag::se
379
+ || tokens[i - 1 ].tag == POSTag::sso)
379
380
&& tokens[i - 1 ].endPos () == tokens[i].position
380
381
&& tokens[i - 1 ].position > tokens[i - 2 ].endPos ();
381
382
if (nestedSentEnd)
Original file line number Diff line number Diff line change @@ -1124,6 +1124,19 @@ TEST(KiwiCpp, IssueP131_SentenceSplitError)
1124
1124
EXPECT_EQ (res[1 ], std::make_pair ((size_t )10 , (size_t )12 ));
1125
1125
}
1126
1126
1127
+ TEST (KiwiCpp, Issue181_SentenceSplitError)
1128
+ {
1129
+ const char16_t * text = u" 존 슈발John Schwall은 그에 꼭 들어맞는 흥미로운 사례였다. 슈발의 아버지와 할아버지는 스테이튼 아일랜드의 소방관이었다. “제 친가 쪽의 남자들은 모두 소방관이에요. 전 다 른 일을 하고 싶었죠.” 슈발이 말했다." ;
1130
+ Kiwi& kiwi = reuseKiwiInstance ();
1131
+ auto res = kiwi.splitIntoSents (text);
1132
+ EXPECT_EQ (res.size (), 5 );
1133
+ EXPECT_EQ (res[0 ], std::make_pair ((size_t )0 , (size_t )38 ));
1134
+ EXPECT_EQ (res[1 ], std::make_pair ((size_t )39 , (size_t )72 ));
1135
+ EXPECT_EQ (res[2 ], std::make_pair ((size_t )73 , (size_t )97 ));
1136
+ EXPECT_EQ (res[3 ], std::make_pair ((size_t )98 , (size_t )115 ));
1137
+ EXPECT_EQ (res[4 ], std::make_pair ((size_t )116 , (size_t )124 ));
1138
+ }
1139
+
1127
1140
TEST (KiwiCpp, AddRule)
1128
1141
{
1129
1142
Kiwi& okiwi = reuseKiwiInstance ();
You can’t perform that action at this time.
0 commit comments