Example #1
0
        private void TrafficUnknownWord(String word, T_POS Pos)
        {
            if (word.Length <= 1 || word.Length > 3)
            {
                return;
            }

            T_DictStruct unknownWord = _UnknownWordsDictMgr.GetWord(word);


            if (unknownWord == null)
            {
                _UnknownWordsDictMgr.InsertWord(word, 1, (int)Pos);
                return;
            }

            //如果是屏蔽的未登录词,则不加入
            //屏蔽的未登录词用词性等于0来表示
            if (unknownWord.Pos == 0)
            {
                return;
            }

            unknownWord.Pos |= (int)Pos;
            unknownWord.Frequency++;

            if (unknownWord.Frequency > UnknownWordsThreshold && AutoInsertUnknownWords)
            {
                T_DictStruct w = _DictMgr.GetWord(word);
                if (w == null)
                {
                    _DictMgr.InsertWord(word, unknownWord.Frequency, unknownWord.Pos);

                    _ExtractWords.InsertWordToDfa(word, unknownWord);
                    _POS.AddWordPos(word, unknownWord.Pos);
                }
                else
                {
                    w.Pos       |= unknownWord.Pos;
                    w.Frequency += unknownWord.Frequency;
                }

                unknownWord.Frequency = 0;
            }
        }
Example #2
0
        static public String GetChsPos(T_POS pos)
        {
            switch (pos)
            {
            case T_POS.POS_D_A:                 //	形容词 形语素
                return("形容词 形语素");

            case T_POS.POS_D_B:         //	区别词 区别语素
                return("区别词 区别语素");

            case T_POS.POS_D_C:         //	连词 连语素
                return("连词 连语素");

            case T_POS.POS_D_D:         //	副词 副语素
                return("副词 副语素");

            case T_POS.POS_D_E:         //	叹词 叹语素
                return("叹词 叹语素");

            case T_POS.POS_D_F:         //	方位词 方位语素
                return("方位词 方位语素");

            case T_POS.POS_D_I:         //	成语
                return("成语");

            case T_POS.POS_D_L:         //	习语
                return("习语");

            case T_POS.POS_A_M:         //	数词 数语素
                return("数词 数语素");

            case T_POS.POS_D_MQ:       //	数量词
                return("数量词");

            case T_POS.POS_D_N:         //	名词 名语素
                return("名词 名语素");

            case T_POS.POS_D_O:         //	拟声词
                return("拟声词");

            case T_POS.POS_D_P:         //	介词
                return("介词");

            case T_POS.POS_A_Q:         //	量词 量语素
                return("量词 量语素");

            case T_POS.POS_D_R:         //	代词 代语素
                return("代词 代语素");

            case T_POS.POS_D_S:         //	处所词
                return("处所词");

            case T_POS.POS_D_T:         //	时间词
                return("时间词");

            case T_POS.POS_D_U:         //	助词 助语素
                return("助词 助语素");

            case T_POS.POS_D_V:         //	动词 动语素
                return("动词 动语素");

            case T_POS.POS_D_W:         //	标点符号
                return("标点符号");

            case T_POS.POS_D_X:         //	非语素字
                return("非语素字");

            case T_POS.POS_D_Y:         //	语气词 语气语素
                return("语气词 语气语素");

            case T_POS.POS_D_Z:         //	状态词
                return("状态词");

            case T_POS.POS_A_NR:    //	人名
                return("人名");

            case T_POS.POS_A_NS:    //	地名
                return("地名");

            case T_POS.POS_A_NT:    //	机构团体
                return("机构团体");

            case T_POS.POS_A_NX:    //	外文字符
                return("外文字符");

            case T_POS.POS_A_NZ:    //	其他专名
                return("其他专名");

            case T_POS.POS_D_H:         //	前接成分
                return("前接成分");

            case T_POS.POS_D_K:         //	后接成分
                return("后接成分");

            case T_POS.POS_UNK:    //  未知词性
                return("未知词性");

            default:
                return("未知词性");
            }
        }
Example #3
0
        public static T_INNER_POS GetInnerPos(T_POS pos)
        {
            switch (pos)
            {
            case T_POS.POS_D_A:         //	形容词 形语素
                return(T_INNER_POS.POS_D_A);

            case T_POS.POS_D_B:         //	区别词 区别语素
                return(T_INNER_POS.POS_D_B);

            case T_POS.POS_D_C:         //	连词 连语素
                return(T_INNER_POS.POS_D_C);

            case T_POS.POS_D_D:         //	副词 副语素
                return(T_INNER_POS.POS_D_D);

            case T_POS.POS_D_E:         //	叹词 叹语素
                return(T_INNER_POS.POS_D_E);

            case T_POS.POS_D_F:         //	方位词 方位语素
                return(T_INNER_POS.POS_D_F);

            case T_POS.POS_D_I:         //	成语
                return(T_INNER_POS.POS_D_I);

            case T_POS.POS_D_L:         //	习语
                return(T_INNER_POS.POS_D_L);

            case T_POS.POS_A_M:         //	数词 数语素
                return(T_INNER_POS.POS_A_M);

            case T_POS.POS_D_MQ:       //	数量词
                return(T_INNER_POS.POS_D_MQ);

            case T_POS.POS_D_N:         //	名词 名语素
                return(T_INNER_POS.POS_D_N);

            case T_POS.POS_D_O:         //	拟声词
                return(T_INNER_POS.POS_D_O);

            case T_POS.POS_D_P:         //	介词
                return(T_INNER_POS.POS_D_P);

            case T_POS.POS_A_Q:         //	量词 量语素
                return(T_INNER_POS.POS_A_Q);

            case T_POS.POS_D_R:         //	代词 代语素
                return(T_INNER_POS.POS_D_R);

            case T_POS.POS_D_S:         //	处所词
                return(T_INNER_POS.POS_D_S);

            case T_POS.POS_D_T:         //	时间词
                return(T_INNER_POS.POS_D_T);

            case T_POS.POS_D_U:         //	助词 助语素
                return(T_INNER_POS.POS_D_U);

            case T_POS.POS_D_V:         //	动词 动语素
                return(T_INNER_POS.POS_D_V);

            case T_POS.POS_D_W:         //	标点符号
                return(T_INNER_POS.POS_D_W);

            case T_POS.POS_D_X:         //	非语素字
                return(T_INNER_POS.POS_D_X);

            case T_POS.POS_D_Y:         //	语气词 语气语素
                return(T_INNER_POS.POS_D_Y);

            case T_POS.POS_D_Z:         //	状态词
                return(T_INNER_POS.POS_D_Z);

            case T_POS.POS_A_NR:    //	人名
                return(T_INNER_POS.POS_A_NR);

            case T_POS.POS_A_NS:    //	地名
                return(T_INNER_POS.POS_A_NS);

            case T_POS.POS_A_NT:    //	机构团体
                return(T_INNER_POS.POS_A_NT);

            case T_POS.POS_A_NX:    //	外文字符
                return(T_INNER_POS.POS_A_NX);

            case T_POS.POS_A_NZ:    //	其他专名
                return(T_INNER_POS.POS_A_NZ);

            case T_POS.POS_D_H:         //	前接成分
                return(T_INNER_POS.POS_D_H);

            case T_POS.POS_D_K:         //	后接成分
                return(T_INNER_POS.POS_D_K);

            case T_POS.POS_UNK:    //  未知词性
                return(T_INNER_POS.POS_UNK);

            default:
                return(T_INNER_POS.POS_UNK);
            }
        }