这是我的代码:
std::vector<std::string> InverseIndex::getWords(std::string line)
{
std::vector<std::string> words;
char* str = (char*)line.c_str();
char* end = str + strlen(str) + 1;
unsigned char symbol[5] = {0,0,0,0,0};
while( str < end ){
utf8::uint32_t code = utf8::next(str, end);
if(code == 0) continue;
utf8::append(code, symbol);
// TODO detect white spaces or numbers.
std::string word = (const char*)symbol;
words.push_back(word);
}
return words;
}
Input : "你 好 啊 哈哈 1234"
Output :
你
??
好
??
啊
??
哈
哈
??
1??
2??
3??
4??
Expected output :
你
好
啊
哈
哈
无论如何要跳过空格或数字,谢谢?