• 大小: 3.85MB
    文件类型: .rar
    金币: 1
    下载: 0 次
    发布日期: 2023-08-13
  • 语言: C#
  • 标签: NLPIR  ICTCLS2013  分词  C#  

资源简介

NLPIR(ICTCLAS2013)是由张华平博士发布的中文分词系统,可用多种语言进行二次开发,该资源是用C#语言在VS2010环境下在http://www.nlpir.org/提供的原示例基础上进行改进后的示例程序。

资源截图

代码片段和文件信息

using System;
using System.IO;
using System.Runtime.InteropServices;
using System.Text;

namespace Example
{
    /// 
    /// 标注集类型。
    /// 

    public enum NLPIR_MAP
    {
        /// 
        /// 计算所一级标注集。
        /// 

        ICT_POS_MAP_FIRST = 1

        /// 
        /// 计算所二级标注集。
        /// 

        ICT_POS_MAP_SECOND = 0

        /// 
        /// 北大一级标注集。
        /// 

        PKU_POS_MAP_FIRST = 3

        /// 
        /// 北大二级标注集。
        /// 

        PKU_POS_MAP_SECOND = 2
    }

    /// 
    /// 编码类型。
    /// 

    public enum NLPIR_CODE
    {
        /// 
        /// GBK编码。
        /// 

        GBK_CODE = 0

        /// 
        /// UTF8编码。
        /// 

        UTF8_CODE = 1

        /// 
        /// BIG5编码。
        /// 

        BIG5_CODE = 2

        /// 
        /// GBK编码,里面包含繁体字。
        /// 

        GBK_FANTI_CODE = 3
    }

    /// 
    /// 分词结果结构体。
    /// 

    [StructLayout(LayoutKind.Sequential)]
    public struct result_t
    {
        /// 
        /// 词语在输入句子中的开始位置。
        /// 

        public int start;

        /// 
        /// 词语的长度。
        /// 

        public int length;

        /// 
        /// 词性ID值,可以快速的获取词性表。
        /// 

        [MarshalAsAttribute(UnmanagedType.ByValTStr SizeConst = 40)]
        public string sPos;

        /// 
        /// 词性标注的编号。
        /// 

        public int POS_id;

        /// 
        /// 该词的内部ID号,如果是未登录词,设成0或者-1。
        /// 

        public int word_ID;

        /// 
        /// 区分用户词典,1是用户词典中的词,0非用户词典中的词。
        /// 

        public int word_type;

        /// 
        /// 权值。
        /// 

        public int weight;
    }

    /// 
    /// 分词类。
    /// 

    public class NLPIR
    {
        #region 对变量进行声明
        private static bool _Init = false;
        private static bool _NWIStart = false;
        private static bool _NWIComplete = false;
        private const string rootDir = @“.\“;
        #endregion

        #region 对函数进行声明和包装
        #region 预判断
        private static void JudgeInit()
        {
            if (!_Init) throw new Exception(“未进行初始化!“);
        }

        private static void JudgeNWIStart()
        {
            JudgeInit();
            if (!_NWIStart) throw new Exception(“未启动新词识别!“);
        }

        private static void JudgeNWIComplete()
        {
            JudgeInit();
            if (!_NWIComplete) throw new Exception(“未结束新词识别!“);
        }
        #endregion

        #region 初始化、退出
        /// 
        /// 初始化。
        /// 

        /// 

 属性            大小     日期    时间   名称
----------- ---------  ---------- -----  ----

     文件        144  2013-12-02 16:21  NLPIR_C#\app.config

     文件     286196  2012-05-18 21:36  NLPIR_C#\bin\Data\BIG2GBK.map

     文件     468456  2012-05-18 21:33  NLPIR_C#\bin\Data\BIG5.pdat

     文件     158695  2012-05-18 21:33  NLPIR_C#\bin\Data\BIG5.wordlist

     文件    3520144  2009-01-16 13:48  NLPIR_C#\bin\Data\BiWord.big

     文件      65540  2012-11-08 20:45  NLPIR_C#\bin\Data\charset.type

     文件        856  2013-12-03 21:57  NLPIR_C#\bin\Data\Configure.xml

     文件    1696620  2009-01-16 13:48  NLPIR_C#\bin\Data\CoreDict.pdat

     文件    1786424  2009-01-16 13:48  NLPIR_C#\bin\Data\CoreDict.pos

     文件     478168  2009-01-16 13:48  NLPIR_C#\bin\Data\CoreDict.unig

     文件     262236  2013-12-07 12:41  NLPIR_C#\bin\Data\FieldDict.pdat

     文件         30  2013-12-07 12:41  NLPIR_C#\bin\Data\FieldDict.pos

     文件     549204  2012-05-18 21:34  NLPIR_C#\bin\Data\GBK.pdat

     文件     166985  2012-05-18 21:34  NLPIR_C#\bin\Data\GBK.wordlist

     文件     286196  2012-05-18 21:36  NLPIR_C#\bin\Data\GBK2BIG.map

     文件     286196  2012-05-18 21:37  NLPIR_C#\bin\Data\GBK2GBKC.map

     文件     286196  2012-05-18 21:37  NLPIR_C#\bin\Data\GBK2UTF.map

     文件     550848  2012-12-22 11:50  NLPIR_C#\bin\Data\GBKA.pdat

     文件     166985  2012-12-22 11:50  NLPIR_C#\bin\Data\GBKA.wordlist

     文件     286196  2012-12-22 11:50  NLPIR_C#\bin\Data\GBKA2UTF.map

     文件     550848  2012-05-18 21:34  NLPIR_C#\bin\Data\GBKC.pdat

     文件     166985  2012-05-18 21:34  NLPIR_C#\bin\Data\GBKC.wordlist

     文件     286196  2012-05-18 21:37  NLPIR_C#\bin\Data\GBKC2GBK.map

     文件    1978128  2009-01-16 13:48  NLPIR_C#\bin\Data\GranDict.pdat

     文件    1778776  2009-01-16 13:48  NLPIR_C#\bin\Data\GranDict.pos

     文件        406  2009-01-16 13:48  NLPIR_C#\bin\Data\ICTPOS.map

     文件       3229  2013-12-07 12:41  NLPIR_C#\bin\Data\NewWord.lst

     文件      37253  2009-01-16 13:48  NLPIR_C#\bin\Data\NLPIR.ctx

     文件       3356  2013-11-15 12:29  NLPIR_C#\bin\Data\NLPIR.user

     文件        288  2009-01-16 13:48  NLPIR_C#\bin\Data\NLPIR_First.map

............此处省略47个文件信息

评论

共有 条评论