コード例 #1
0
ファイル: Example.cs プロジェクト: wangmingjun/ICTCLAS
        static void Main(string[] args)
        {
            //
            // TODO: �ڴ˴���Ӵ��������Ӧ�ó���
            //
            if (!ICTCLAS_Init("", 0))//��������Ϊ2:BIG5_CODE,1:UTF8_CODE
            {
                System.Console.WriteLine("Init ICTCLAS failed!");
                return;
            }

            //ICTCLAS_ImportUserDict("userdic.txt");

            String s = "ICTCLAS�ڹ���973ר������֯�������л����˵�һ�����ڵ�һ��������Ĵ����о�����SigHan��֯�������ж�����˶����һ����";
            int count = ICTCLAS_GetParagraphProcessAWordCount(s);//�ȵõ�����Ĵ���

            result_t[] result = new result_t[count];//�ڿͻ���������Դ

            ICTCLAS_ParagraphProcessAW(count,result);//��ȡ����浽�ͻ����ڴ���

               int i=1;
            foreach(result_t r in result)
            {
                String sWhichDic="";
                switch (r.word_type)
                {
                    case 0:
                        sWhichDic = "���Ĵʵ�";
                        break;
                    case 1:
                        sWhichDic = "�û��ʵ�";
                        break;
                    case 2:
                        sWhichDic = "רҵ�ʵ�";
                        break;
                    default:
                        break;
                }
                Console.WriteLine("No.{0}:start:{1}, length:{2},POS_ID:{3},Word_ID:{4}, UserDefine:{5}\n", i++, r.start, r.length, r.POS_id, r.word_ID, sWhichDic);//, s.Substring(r.start, r.length)
               }

            ICTCLAS_FileProcess("Input.txt","Input_result.txt", 1);
            StringBuilder pResult;
            //���ֻ��ϻ�������С����Э��������ɽ����ףӢ̨����

            //���¼����û��ʵ�
            //int nCount = ICTCLAS_ImportUserDict("userdict.txt");//Import Userdict
            //System.Console.WriteLine(nCount);
            //printf("%d\n",nCount);
            StringBuilder sResult = new StringBuilder(600);

            ICTCLAS_ParagraphProcessE(s,sResult, 1);
            System.Console.WriteLine("Before Userdict imported:");
            System.Console.WriteLine(sResult);
            String ss;
            Console.WriteLine("inser usr dic:");
            ss = Console.ReadLine();
            while (ss[0]!='q'&&ss[0]!='Q')
            {
                //�û��ʵ�����Ӵ�
               int iiii = ICTCLAS_AddUserWord(ss);//�� ���� example:������� vyou
               ICTCLAS_ParagraphProcessE(s, sResult, 1);
                //System.Console.WriteLine("Before Userdict imported:");
                System.Console.WriteLine(sResult);
                ICTCLAS_SaveTheUsrDic(); // save the user dictionary to the file

               //ɾ���û��ʵ��еĴ�
                Console.WriteLine("delete usr dic:");
                ss = Console.ReadLine();
                iiii = ICTCLAS_DelUsrWord(ss);
                ICTCLAS_ParagraphProcessE(s, sResult, 1);
                //System.Console.WriteLine("Before Userdict imported:");
                System.Console.WriteLine(sResult);
                ICTCLAS_SaveTheUsrDic();

            }

            //printf("%d\n",nCount);

            //pResult = ICTCLAS_ParagraphProcess("������س�Ů��������ܹ���ϲ���������б����ڷǵ�֮��",0);
            //System.Console.WriteLine("After Userdict imported:");
            //System.Console.WriteLine(pResult);

            //System.Console.WriteLine("Input Sentence Now!(q to quit)\n");
            //String sInput = System.Console.ReadLine();
            //while (sInput.CompareTo("q")!=0)
            //{
            //    pResult = ICTCLAS_ParagraphProcess(sInput,1);
            //    System.Console.WriteLine("Resut:");
            //    System.Console.WriteLine(pResult);
            //    System.Console.WriteLine("\nInput Sentence Now!(q to quit)\n");
            //    sInput = System.Console.ReadLine();
            //}
            ICTCLAS_FileProcess("Input.txt","Input_result.txt",1);
            ICTCLAS_Exit();
        }
コード例 #2
0
ファイル: Example.cs プロジェクト: wangmingjun/ICTCLAS
        static void Main(string[] args)
        {
            //
            // TODO: 在此处添加代码以启动应用程序
            //
            if (!ICTCLAS_Init(null))
            {
                System.Console.WriteLine("Init ICTCLAS failed!");
                return;
            }

            ICTCLAS_ImportUserDict("userdic.txt");

            String s     = "ICTCLAS在国内973专家组组织的评测中活动获得了第一名,在第一届国际中文处理研究机构SigHan组织的评测中都获得了多项第一名。";
            int    count = ICTCLAS_GetParagraphProcessAWordCount(s);         //先得到结果的词数


            result_t[] result = new result_t[count];            //在客户端申请资源

            ICTCLAS_ParagraphProcessAW(count, result);          //获取结果存到客户的内存中

            int i = 1;

            foreach (result_t r in result)
            {
                String sWhichDic = "";
                switch (r.word_type)
                {
                case 0:
                    sWhichDic = "核心词典";
                    break;

                case 1:
                    sWhichDic = "用户词典";
                    break;

                case 2:
                    sWhichDic = "专业词典";
                    break;

                default:
                    break;
                }
                Console.WriteLine("No.{0}:start:{1}, length:{2},POS_ID:{3},Word_ID:{4}, UserDefine:{5}, Word:{6}\n", i++, r.start, r.length, r.POS_id, r.word_ID, sWhichDic, s.Substring(r.start / 2, r.length / 2));
            }


            ICTCLAS_FileProcess("Input.txt", "Input_result.txt", 1);
            String pResult;

            //音乐会上还演奏了小提琴协奏曲《梁山伯与祝英台》、

            //重新加载用户词典
            //int nCount = ICTCLAS_ImportUserDict("userdict.txt");//Import Userdict
            //System.Console.WriteLine(nCount);
            //printf("%d\n",nCount);

            pResult = ICTCLAS_ParagraphProcess("ICTCLAS在国内973专家组组织的评测中活动获得了第一名,在第一届国际中文处理研究机构SigHan组织的评测中都获得了多项第一名。", 1);
            System.Console.WriteLine("Before Userdict imported:");
            System.Console.WriteLine(pResult);
            while (true)
            {
                //用户词典中添加词
                String ss;
                Console.WriteLine("inser usr dic:");
                ss = Console.ReadLine();
                int iiii = ICTCLAS_AddUserWord(ss);//词 词性 example:点击下载 vyou
                pResult = ICTCLAS_ParagraphProcess(s, 1);
                //System.Console.WriteLine("Before Userdict imported:");
                System.Console.WriteLine(pResult);
                ICTCLAS_SaveTheUsrDic(); // save the user dictionary to the file

                //删除用户词典中的词
                Console.WriteLine("delete usr dic:");
                ss      = Console.ReadLine();
                iiii    = ICTCLAS_DelUsrWord(ss);
                pResult = ICTCLAS_ParagraphProcess(s, 1);
                //System.Console.WriteLine("Before Userdict imported:");
                System.Console.WriteLine(pResult);
                ICTCLAS_SaveTheUsrDic();
            }


            //printf("%d\n",nCount);

            //pResult = ICTCLAS_ParagraphProcess("点击下载超女纪敏佳深受观众喜爱。禽流感爆发在非典之后。",0);
            //System.Console.WriteLine("After Userdict imported:");
            //System.Console.WriteLine(pResult);



            //System.Console.WriteLine("Input Sentence Now!(q to quit)\n");
            //String sInput = System.Console.ReadLine();
            //while (sInput.CompareTo("q")!=0)
            //{
            //    pResult = ICTCLAS_ParagraphProcess(sInput,1);
            //    System.Console.WriteLine("Resut:");
            //    System.Console.WriteLine(pResult);
            //    System.Console.WriteLine("\nInput Sentence Now!(q to quit)\n");
            //    sInput = System.Console.ReadLine();
            //}
            ICTCLAS_FileProcess("Input.txt", "Input_result.txt", 1);
            ICTCLAS_Exit();
        }
コード例 #3
0
ファイル: Example.cs プロジェクト: wrongtest/nlpservice
        static void Main(string[] args)
        {
            //
            // TODO: �ڴ˴���Ӵ��������Ӧ�ó���
            //
            if (!NLPIR_Init("../../", 0,""))//����Data�ļ����ڵ�·����ע�����ʵ������޸ġ�
            {
                System.Console.WriteLine("Init ICTCLAS failed!");
                return;
            }
            System.Console.WriteLine("Init ICTCLAS success!");

            String s = "�������������ۺϱ������ݶ���˹�����ۺ���������12��27�ձ���������˹��������ó�׷�������12��26�ո����Ѿ�ǩ���ĺ�ͬ�Ͳɹ����򣬶�2012����˶���˹֮����������Ҿ޶�����������������ܽᣬ�Ƴ����������20�������������а�����ӡ�Ȳ����߾Ӱ��ף����һ�6���ϰ񡣾���������£�";

            int count = NLPIR_GetParagraphProcessAWordCount(s);//�ȵõ�����Ĵ���
            System.Console.WriteLine("NLPIR_GetParagraphProcessAWordCount success!");

            result_t[] result = new result_t[count];//�ڿͻ���������Դ
            NLPIR_ParagraphProcessAW(count,result);//��ȡ����浽�ͻ����ڴ���
            int i=1;
            foreach(result_t r in result)
            {
                String sWhichDic="";
                switch (r.word_type)
                {
                    case 0:
                        sWhichDic = "���Ĵʵ�";
                        break;
                    case 1:
                        sWhichDic = "�û��ʵ�";
                        break;
                    case 2:
                        sWhichDic = "רҵ�ʵ�";
                        break;
                    default:
                        break;
                }
                Console.WriteLine("No.{0}:start:{1}, length:{2},POS_ID:{3},Word_ID:{4}, UserDefine:{5}\n", i++, r.start, r.length, r.POS_id, r.word_ID, sWhichDic);//, s.Substring(r.start, r.length)
               }
              StringBuilder sResult = new StringBuilder(600);
            //׼���洢�ռ�

              IntPtr intPtr =NLPIR_ParagraphProcess(s);//�зֽ������ΪIntPtr����
              String str = Marshal.PtrToStringAnsi(intPtr);//���зֽ��ת��Ϊstring
              Console.WriteLine(str);

              intPtr = NLPIR_GetFileKeyWords("../test/test.TXT", 50, true);
              str = Marshal.PtrToStringAnsi(intPtr);//���зֽ��ת��Ϊstring
              Console.WriteLine(str);

              s = "�������������ۺϱ������ݶ���˹�����ۺ���������12��27�ձ���������˹��������ó�׷�������12��26�ո����Ѿ�ǩ���ĺ�ͬ�Ͳɹ����򣬶�2012����˶���˹֮����������Ҿ޶�����������������ܽᣬ�Ƴ����������20�������������а�����ӡ�Ȳ����߾Ӱ��ף����һ�6���ϰ񡣾���������£�";

              intPtr = NLPIR_GetKeyWords(s, 10, true);
              str = Marshal.PtrToStringAnsi(intPtr);//���зֽ��ת��Ϊstring
              Console.WriteLine(str);

              System.Console.WriteLine("Before Userdict imported:");
              String ss;
              Console.WriteLine("insert user dic:");
              ss = Console.ReadLine();
            while (ss[0]!='q'&&ss[0]!='Q')
            {
            //�û��ʵ�����Ӵ�
            int iiii = NLPIR_AddUserWord(ss);//�� ���� example:������� vyou
            intPtr = NLPIR_ParagraphProcess(s, 1);
            str = Marshal.PtrToStringAnsi(intPtr);
            System.Console.WriteLine(str);
            NLPIR_SaveTheUsrDic(); // save the user dictionary to the file

            //ɾ���û��ʵ��еĴ�
            Console.WriteLine("delete usr dic:");
            ss = Console.ReadLine();
            iiii = NLPIR_DelUsrWord(ss);
            str = Marshal.PtrToStringAnsi(intPtr);
            System.Console.WriteLine(str);
            NLPIR_SaveTheUsrDic();

            }

            //�����´ʷ���������Ӧ�ִʹ���
            NLPIR_NWI_Start();//�´ʷ��ֹ������
            NLPIR_NWI_AddFile("../../test/��˿��һ����ͷ�ĵ���.TXT");//���һ���������´ʵ��ļ����ɷ������

            NLPIR_NWI_Complete();//�´ʷ������

            intPtr = NLPIR_NWI_GetResult();
            str = Marshal.PtrToStringAnsi(intPtr);

            System.Console.WriteLine("�´�ʶ����:");
            System.Console.WriteLine(str);
            NLPIR_FileProcess("../test/��˿��һ����ͷ�ĵ���.TXT", "../test/��˿��һ����ͷ�ĵ���-�ִʽ��.TXT");
            NLPIR_NWI_Result2UserDict();//�´�ʶ��������ִʿ�
            NLPIR_FileProcess("../test/��˿��һ����ͷ�ĵ���.TXT", "../test/��˿��һ����ͷ�ĵ���-����Ӧ�ִʽ��.TXT");
            NLPIR_Exit();
        }
コード例 #4
0
ファイル: Example.cs プロジェクト: shawnwx0/NLPIR-1
        static void Main(string[] args)
        {
            //
            // TODO: 在此处添加代码以启动应用程序
            //
            if (!NLPIR_Init("../../", 0, ""))//给出Data文件所在的路径,注意根据实际情况修改。
            {
                System.Console.WriteLine("Init ICTCLAS failed!");
                return;
            }
            System.Console.WriteLine("Init ICTCLAS success!");

            String s = "  【环球网综合报道】据俄罗斯军工综合体新闻网12月27日报道,俄罗斯世界武器贸易分析中心12月26日根据已经签订的合同和采购意向,对2012年除了俄罗斯之外的其他国家巨额武器交易情况进行总结,推出了年度世界20大武器交易排行榜,其中印度不仅高居榜首,而且还6次上榜。具体情况如下:";

            int count = NLPIR_GetParagraphProcessAWordCount(s);//先得到结果的词数

            System.Console.WriteLine("NLPIR_GetParagraphProcessAWordCount success!");

            result_t[] result = new result_t[count]; //在客户端申请资源
            NLPIR_ParagraphProcessAW(count, result); //获取结果存到客户的内存中
            int i = 1;

            foreach (result_t r in result)
            {
                String sWhichDic = "";
                switch (r.word_type)
                {
                case 0:
                    sWhichDic = "核心词典";
                    break;

                case 1:
                    sWhichDic = "用户词典";
                    break;

                case 2:
                    sWhichDic = "专业词典";
                    break;

                default:
                    break;
                }
                Console.WriteLine("No.{0}:start:{1}, length:{2},POS_ID:{3},Word_ID:{4}, UserDefine:{5}\n", i++, r.start, r.length, r.POS_id, r.word_ID, sWhichDic);//, s.Substring(r.start, r.length)
            }
            StringBuilder sResult = new StringBuilder(600);
            //准备存储空间

            IntPtr intPtr = NLPIR_ParagraphProcess(s);       //切分结果保存为IntPtr类型
            String str    = Marshal.PtrToStringAnsi(intPtr); //将切分结果转换为string

            Console.WriteLine(str);

            intPtr = NLPIR_GetFileKeyWords("../test/test.TXT", 50, true);
            str    = Marshal.PtrToStringAnsi(intPtr);//将切分结果转换为string
            Console.WriteLine(str);

            s = "  【环球网综合报道】据俄罗斯军工综合体新闻网12月27日报道,俄罗斯世界武器贸易分析中心12月26日根据已经签订的合同和采购意向,对2012年除了俄罗斯之外的其他国家巨额武器交易情况进行总结,推出了年度世界20大武器交易排行榜,其中印度不仅高居榜首,而且还6次上榜。具体情况如下:";

            intPtr = NLPIR_GetKeyWords(s, 10, true);
            str    = Marshal.PtrToStringAnsi(intPtr);//将切分结果转换为string
            Console.WriteLine(str);



            System.Console.WriteLine("Before Userdict imported:");
            String ss;

            Console.WriteLine("insert user dic:");
            ss = Console.ReadLine();
            while (ss[0] != 'q' && ss[0] != 'Q')
            {
                //用户词典中添加词
                int iiii = NLPIR_AddUserWord(ss);//词 词性 example:点击下载 vyou
                intPtr = NLPIR_ParagraphProcess(s, 1);
                str    = Marshal.PtrToStringAnsi(intPtr);
                System.Console.WriteLine(str);
                NLPIR_SaveTheUsrDic(); // save the user dictionary to the file

                //删除用户词典中的词
                Console.WriteLine("delete usr dic:");
                ss   = Console.ReadLine();
                iiii = NLPIR_DelUsrWord(ss);
                str  = Marshal.PtrToStringAnsi(intPtr);
                System.Console.WriteLine(str);
                NLPIR_SaveTheUsrDic();
            }

            //测试新词发现与自适应分词功能
            NLPIR_NWI_Start();                              //新词发现功能启动
            NLPIR_NWI_AddFile("../../test/屌丝,一个字头的诞生.TXT"); //添加一个待发现新词的文件,可反复添加

            NLPIR_NWI_Complete();                           //新词发现完成


            intPtr = NLPIR_NWI_GetResult();
            str    = Marshal.PtrToStringAnsi(intPtr);


            System.Console.WriteLine("新词识别结果:");
            System.Console.WriteLine(str);
            NLPIR_FileProcess("../test/屌丝,一个字头的诞生.TXT", "../test/屌丝,一个字头的诞生-分词结果.TXT");
            NLPIR_NWI_Result2UserDict();//新词识别结果导入分词库
            NLPIR_FileProcess("../test/屌丝,一个字头的诞生.TXT", "../test/屌丝,一个字头的诞生-自适应分词结果.TXT");
            NLPIR_Exit();
        }