⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 pos.cs

📁 KTDictSeg 简介: KTDictSeg 是由KaiToo搜索开发的一款基于字典的简单中英文分词算法 * 主要功能: 中英文分词
💻 CS
📖 第 1 页 / 共 2 页
字号:
using System;
using System.Collections;
using System.Collections.Generic;
using System.Text;

namespace KTDictSeg
{
    /// <summary>
    /// 内部使用的词性
    /// </summary>
    public enum T_INNER_POS
    {
        /// <summary>
        /// 形容词 形语素
        /// </summary>
        POS_D_A = 30,	//	形容词 形语素

        /// <summary>
        /// 区别词 区别语素
        /// </summary>
        POS_D_B = 29,	//	区别词 区别语素

        /// <summary>
        /// 连词 连语素
        /// </summary>
        POS_D_C = 28,	//	连词 连语素

        /// <summary>
        /// 副词 副语素
        /// </summary>
        POS_D_D = 27,	//	副词 副语素

        /// <summary>
        /// 叹词 叹语素
        /// </summary>
        POS_D_E = 26,	//	叹词 叹语素

        /// <summary>
        /// 方位词 方位语素
        /// </summary>
        POS_D_F = 25,	//	方位词 方位语素

        /// <summary>
        /// 成语
        /// </summary>
        POS_D_I = 24,	//	成语

        /// <summary>
        /// 习语
        /// </summary>
        POS_D_L = 23,	//	习语

        /// <summary>
        /// 数词 数语素
        /// </summary>
        POS_A_M = 22,	//	数词 数语素

        /// <summary>
        /// 数量词
        /// </summary>
        POS_D_MQ = 21,	//	数量词

        /// <summary>
        /// 名词 名语素
        /// </summary>
        POS_D_N = 20,	//	名词 名语素

        /// <summary>
        /// 拟声词
        /// </summary>
        POS_D_O = 19,	//	拟声词

        /// <summary>
        /// 介词
        /// </summary>
        POS_D_P = 18,	//	介词

        /// <summary>
        /// 量词 量语素
        /// </summary>
        POS_A_Q = 17,	//	量词 量语素

        /// <summary>
        /// 代词 代语素
        /// </summary>
        POS_D_R = 16,	//	代词 代语素

        /// <summary>
        /// 处所词
        /// </summary>
        POS_D_S = 15,	//	处所词

        /// <summary>
        /// 时间词
        /// </summary>
        POS_D_T = 14,	//	时间词

        /// <summary>
        /// 助词 助语素
        /// </summary>
        POS_D_U = 13,	//	助词 助语素

        /// <summary>
        /// 动词 动语素
        /// </summary>
        POS_D_V = 12,	//	动词 动语素

        /// <summary>
        /// 标点符号
        /// </summary>
        POS_D_W = 11,	//	标点符号

        /// <summary>
        /// 非语素字
        /// </summary>
        POS_D_X = 10,	//	非语素字

        /// <summary>
        /// 语气词 语气语素
        /// </summary>
        POS_D_Y = 9,	//	语气词 语气语素

        /// <summary>
        /// 状态词
        /// </summary>
        POS_D_Z = 8,	//	状态词

        /// <summary>
        /// 人名
        /// </summary>
        POS_A_NR = 7,	//	人名

        /// <summary>
        /// 地名
        /// </summary>
        POS_A_NS = 6,	//	地名

        /// <summary>
        /// 机构团体
        /// </summary>
        POS_A_NT = 5,	//	机构团体

        /// <summary>
        /// 外文字符
        /// </summary>
        POS_A_NX = 4,	//	外文字符

        /// <summary>
        /// 其他专名
        /// </summary>
        POS_A_NZ = 3,	//	其他专名

        /// <summary>
        /// 前接成分
        /// </summary>
        POS_D_H = 2,	//	前接成分

        /// <summary>
        /// 后接成分
        /// </summary>
        POS_D_K = 1,	//	后接成分

        /// <summary>
        /// 未知词性
        /// </summary>
        POS_UNK = 0,   //  未知词性

    }

    public enum T_POS
    {
        /// <summary>
        /// 形容词 形语素
        /// </summary>
        POS_D_A	= 0x40000000,	//	形容词 形语素

        /// <summary>
        /// 区别词 区别语素
        /// </summary>
        POS_D_B	= 0x20000000,	//	区别词 区别语素

        /// <summary>
        /// 连词 连语素
        /// </summary>
        POS_D_C	= 0x10000000,	//	连词 连语素

        /// <summary>
        /// 副词 副语素
        /// </summary>
        POS_D_D	= 0x08000000,	//	副词 副语素

        /// <summary>
        /// 叹词 叹语素
        /// </summary>
        POS_D_E	= 0x04000000,	//	叹词 叹语素

        /// <summary>
        /// 方位词 方位语素
        /// </summary>
        POS_D_F	= 0x02000000,	//	方位词 方位语素

        /// <summary>
        /// 成语
        /// </summary>
        POS_D_I	= 0x01000000,	//	成语

        /// <summary>
        /// 习语
        /// </summary>
        POS_D_L	= 0x00800000,	//	习语

        /// <summary>
        /// 数词 数语素
        /// </summary>
        POS_A_M	= 0x00400000,	//	数词 数语素

        /// <summary>
        /// 数量词
        /// </summary>
        POS_D_MQ= 0x00200000,	//	数量词

        /// <summary>
        /// 名词 名语素
        /// </summary>
        POS_D_N	= 0x00100000,	//	名词 名语素

        /// <summary>
        /// 拟声词
        /// </summary>
        POS_D_O	= 0x00080000,	//	拟声词

        /// <summary>
        /// 介词
        /// </summary>
        POS_D_P	= 0x00040000,	//	介词

        /// <summary>
        /// 量词 量语素
        /// </summary>
        POS_A_Q	= 0x00020000,	//	量词 量语素

        /// <summary>
        /// 代词 代语素
        /// </summary>
        POS_D_R	= 0x00010000,	//	代词 代语素

        /// <summary>
        /// 处所词
        /// </summary>
        POS_D_S	= 0x00008000,	//	处所词

        /// <summary>
        /// 时间词
        /// </summary>
        POS_D_T	= 0x00004000,	//	时间词

        /// <summary>
        /// 助词 助语素
        /// </summary>
        POS_D_U	= 0x00002000,	//	助词 助语素

        /// <summary>
        /// 动词 动语素
        /// </summary>
        POS_D_V	= 0x00001000,	//	动词 动语素

        /// <summary>
        /// 标点符号
        /// </summary>
        POS_D_W	= 0x00000800,	//	标点符号

        /// <summary>
        /// 非语素字
        /// </summary>
        POS_D_X	= 0x00000400,	//	非语素字

        /// <summary>
        /// 语气词 语气语素
        /// </summary>
        POS_D_Y	= 0x00000200,	//	语气词 语气语素

        /// <summary>
        /// 状态词
        /// </summary>
        POS_D_Z	= 0x00000100,	//	状态词

        /// <summary>
        /// 人名
        /// </summary>
        POS_A_NR= 0x00000080,	//	人名

        /// <summary>
        /// 地名
        /// </summary>
        POS_A_NS= 0x00000040,	//	地名

        /// <summary>
        /// 机构团体
        /// </summary>
        POS_A_NT= 0x00000020,	//	机构团体

        /// <summary>
        /// 外文字符
        /// </summary>
        POS_A_NX= 0x00000010,	//	外文字符

        /// <summary>
        /// 其他专名
        /// </summary>
        POS_A_NZ= 0x00000008,	//	其他专名

        /// <summary>
        /// 前接成分
        /// </summary>
        POS_D_H	= 0x00000004,	//	前接成分

        /// <summary>
        /// 后接成分
        /// </summary>
        POS_D_K	= 0x00000002,	//	后接成分

        /// <summary>
        /// 未知词性
        /// </summary>
        POS_UNK = 0x00000000,   //  未知词性
    }

    /// <summary>
    /// 二元词性组合
    /// </summary>
    public class T_POSBin : IComparable
    {
        public T_INNER_POS m_Pos1;
        public T_INNER_POS m_Pos2;
        public int m_Count;
        int m_HashCode;

        public int HashCode
        {
            get
            {
                return m_HashCode;
            }
        }

        public T_POSBin(T_INNER_POS pos1, T_INNER_POS pos2)
        {
            m_Pos1 = pos1;
            m_Pos2 = pos2;
            m_HashCode = (int)pos1 * 64 + (int)pos2;
        }

        #region IComparable 成员

        public int CompareTo(object obj)
        {
            T_POSBin dest = (T_POSBin)obj;
            if (dest.m_Count == m_Count)
            {
                return 0;
            }
            else if (dest.m_Count > m_Count)
            {

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -