#ifndef CPPJIEBA_KEYWORDEXT_H #define CPPJIEBA_KEYWORDEXT_H #include "Segment.h" namespace CppJieba { class KeyWordExt { private: Segment _segment; set _stopWords; public: KeyWordExt(); ~KeyWordExt(); bool init(const char * const filePath); bool loadStopWords(const char * const filePath); bool destroy(); public: bool extract(const string& utf8Str, vector& keywords, uint topN); private: static bool _pair_compare(const pair& a, const pair& b); bool _extractTopN(const vector& words, vector& keywords, uint topN); bool _filter(vector& utf8Strs); bool _filterDuplicate(vector& utf8Strs); bool _filterSingleWord(vector& utf8Strs); bool _filterSubstr(vector& utf8Strs); bool _filterStopWords(vector& utf8Strs); }; } #endif