コード例 #1
0
ファイル: OrgNamePraserTest.cs プロジェクト: yonglehou/nepy
        public void TestParseSingleOrgName()
        {
            IParser p = new OrgNameParser(GeneralParserTest.CreateParserContext("上海软星动力软件有限公司", dictAddr));
            ParseResultCollection prc = p.Parse(0);

            Assert.AreEqual(1, prc.Count);
            GeneralParserTest.AssertParseResult(prc[0], "上海软星动力软件有限公司", 0, POSType.A_NT);

            p   = new OrgNameParser(GeneralParserTest.CreateParserContext("这里是上海互联网信息有限公司", dictAddr));
            prc = p.Parse(3);
            Assert.AreEqual(1, prc.Count);
            GeneralParserTest.AssertParseResult(prc[0], "上海互联网信息有限公司", 3, POSType.A_NT);

            p   = new OrgNameParser(GeneralParserTest.CreateParserContext("鹿特丹美术学院", dictAddr));
            prc = p.Parse(0);
            Assert.AreEqual(1, prc.Count);
            GeneralParserTest.AssertParseResult(prc[0], "鹿特丹美术学院", 0, POSType.A_NT);

            p   = new OrgNameParser(GeneralParserTest.CreateParserContext("鹿特丹美院", dictAddr));
            prc = p.Parse(0);
            Assert.AreEqual(1, prc.Count);
            GeneralParserTest.AssertParseResult(prc[0], "鹿特丹美院", 0, POSType.A_NT);

            p   = new OrgNameParser(GeneralParserTest.CreateParserContext("先锋商泰(上海)有限公司", dictAddr));
            prc = p.Parse(0);
            Assert.AreEqual(1, prc.Count);
            GeneralParserTest.AssertParseResult(prc[0], "先锋商泰(上海)有限公司", 0, POSType.A_NT);
        }
コード例 #2
0
ファイル: OrgNamePraserTest.cs プロジェクト: yonglehou/nepy
        public void TestParseFullSentenceForPublisherName()
        {
            ParseResultCollection prc = ParseChineseOrgName("《软件测试方法与技术实践指南Java EE版》已经由清华大学出版社出版");

            Assert.AreEqual(1, prc.Count);
            GeneralParserTest.AssertParseResult(prc[0], "清华大学出版社", 26, POSType.A_NT);

            prc = ParseChineseOrgName("作为法律出版社新书、重点书发布平台,我们致力于为读者提供优质的信息服务。");
            Assert.AreEqual(1, prc.Count);
            GeneralParserTest.AssertParseResult(prc[0], "法律出版社", 2, POSType.A_NT);
        }
コード例 #3
0
        public void TestParseSingleAddressWithDuplicateCity()
        {
            IParser parser            = new ChineseAddressParser(CreateParserContext("上海市上海市黄浦区外马路1410号"));
            ParseResultCollection prc = parser.Parse(0);

            Assert.AreEqual(1, prc.Count);
            GeneralParserTest.AssertParseResult(prc[0], "上海市上海市黄浦区外马路1410号", 0, POSType.D_S);
            AssertAddressValue((ChineseAddress)prc[0].Value, null, "上海市", "黄浦区", "外马路", "1410号", null, null);

            parser = new ChineseAddressParser(CreateParserContext("上海上海市黄浦区外马路1410号"));
            prc    = parser.Parse(0);
            Assert.AreEqual(1, prc.Count);
            GeneralParserTest.AssertParseResult(prc[0], "上海黄浦区外马路1410号", 0, POSType.D_S);
            AssertAddressValue((ChineseAddress)prc[0].Value, null, "上海", "黄浦区", "外马路", "1410号", null, null);        //出现两个上海时,以第一个为准
        }
コード例 #4
0
ファイル: OrgNamePraserTest.cs プロジェクト: yonglehou/nepy
        public void TestParseFullSentenceForOrgName()
        {
            ParseResultCollection prc = ParseChineseOrgName("郑荣科 07行政管理专业 现任职于上海江正营销策划有限公司");

            Assert.AreEqual(1, prc.Count);
            GeneralParserTest.AssertParseResult(prc[0], "上海江正营销策划有限公司", 17, POSType.A_NT);

            prc = ParseChineseOrgName("李承龙 08民航 现任职于中国南方国际航空。");
            Assert.AreEqual(1, prc.Count);
            GeneralParserTest.AssertParseResult(prc[0], "中国南方国际航空", 13, POSType.A_NT);

            prc = ParseChineseOrgName("李林玲(左) 06旅游管理班 现任职于上海中福大酒店。");
            Assert.AreEqual(1, prc.Count);
            GeneralParserTest.AssertParseResult(prc[0], "上海中福大酒店", 19, POSType.A_NT);
        }
コード例 #5
0
        public void TestParsePlaceName()
        {
            IParser p = new PlaceNameParser(GeneralParserTest.CreateParserContext("你好,我在上海,他在北京。", dictAddr));
            ParseResultCollection prc = p.Parse(0);

            Assert.AreEqual(0, prc.Count);

            prc = p.Parse(5);
            Assert.AreEqual(1, prc.Count);
            GeneralParserTest.AssertParseResult(prc[0], "上海", 5, POSType.A_NS);

            prc = p.Parse(10);
            Assert.AreEqual(1, prc.Count);
            GeneralParserTest.AssertParseResult(prc[0], "北京", 10, POSType.A_NS);
        }
コード例 #6
0
        public void TestParseSingleAddress()
        {
            IParser parser            = new ChineseAddressParser(CreateParserContext("上海市黄浦区外马路1410号"));
            ParseResultCollection prc = parser.Parse(0);

            Assert.AreEqual(1, prc.Count);
            GeneralParserTest.AssertParseResult(prc[0], "上海市黄浦区外马路1410号", 0, POSType.D_S);
            AssertAddressValue((ChineseAddress)prc[0].Value, null, "上海市", "黄浦区", "外马路", "1410号", null, null);


            parser = new ChineseAddressParser(CreateParserContext("上海市黄浦区陆家浜路413弄5号702室(金南新苑商务楼)"));
            prc    = parser.Parse(0);
            Assert.AreEqual(1, prc.Count);
            GeneralParserTest.AssertParseResult(prc[0], "上海市黄浦区陆家浜路413弄5号702室(金南新苑商务楼)", 0, POSType.D_S);
            AssertAddressValue((ChineseAddress)prc[0].Value, null, null, "上海市", "黄浦区", "陆家浜路", "5号", null, "702室", null, null, "413弄");


            parser = new ChineseAddressParser(CreateParserContext("中国上海市浦东新区银城中路68号时代金融中心大厦38楼"));
            prc    = parser.Parse(0);
            Assert.AreEqual(1, prc.Count);
            GeneralParserTest.AssertParseResult(prc[0], "中国上海市浦东新区银城中路68号时代金融中心大厦38楼", 0, POSType.D_S);
            AssertAddressValue((ChineseAddress)prc[0].Value, "中国", null, "上海市", "浦东新区", "银城中路", "68号", "38楼", null, "时代金融中心大厦");

            parser = new ChineseAddressParser(CreateParserContext("杭州市体育场路453号14楼302室"));
            prc    = parser.Parse(0);
            Assert.AreEqual(1, prc.Count);
            GeneralParserTest.AssertParseResult(prc[0], "杭州市体育场路453号14楼302室", 0, POSType.D_S);
            AssertAddressValue((ChineseAddress)prc[0].Value, null, "杭州市", null, "体育场路", "453号", "14楼", "302室");

            parser = new ChineseAddressParser(CreateParserContext("地址:杭州市江干区九堡九环路六十号"));
            prc    = parser.Parse(3);
            Assert.AreEqual(1, prc.Count);
            GeneralParserTest.AssertParseResult(prc[0], "杭州市江干区九堡九环路六十号", 3, POSType.D_S);
            AssertAddressValue((ChineseAddress)prc[0].Value, null, "杭州市", "江干区", "九堡九环路", "六十号", null, null);

            parser = new ChineseAddressParser(CreateParserContext("杭州西湖区文二西路2号"));
            prc    = parser.Parse(0);
            Assert.AreEqual(1, prc.Count);
            GeneralParserTest.AssertParseResult(prc[0], "杭州西湖区文二西路2号", 0, POSType.D_S);
            AssertAddressValue((ChineseAddress)prc[0].Value, null, "杭州", "西湖区", "文二西路", "2号", null, null);

            parser = new ChineseAddressParser(CreateParserContext("长乐路460弄10号"));
            prc    = parser.Parse(0);
            Assert.AreEqual(1, prc.Count);
            GeneralParserTest.AssertParseResult(prc[0], "长乐路460弄10号", 0, POSType.D_S);
            AssertAddressValue((ChineseAddress)prc[0].Value, null, null, null, null, "长乐路", "10号", null, null, null, null, "460弄");
        }
コード例 #7
0
        public void TestParseFullSentenceForPlaceNames()
        {
            ParseResultCollection prc = ParsePlaceName("沈阳的天气真好,如果哪天我能去沈阳玩就好了。呼和浩特那里咋样?");

            Assert.AreEqual(3, prc.Count);
            GeneralParserTest.AssertParseResult(prc[0], "沈阳", 0, POSType.A_NS);
            GeneralParserTest.AssertParseResult(prc[1], "沈阳", 15, POSType.A_NS);
            GeneralParserTest.AssertParseResult(prc[2], "呼和浩特", 22, POSType.A_NS);

            ParseResultCollection prc2 = ParsePlaceName("传统“金砖四国”(BRIC)引用了巴西、俄罗斯、印度和中国的英文首字母。");

            Assert.AreEqual(4, prc2.Count);
            GeneralParserTest.AssertParseResult(prc2[0], "巴西", 17, POSType.A_NS);
            GeneralParserTest.AssertParseResult(prc2[1], "俄罗斯", 20, POSType.A_NS);
            GeneralParserTest.AssertParseResult(prc2[2], "印度", 24, POSType.A_NS);
            GeneralParserTest.AssertParseResult(prc2[3], "中国", 27, POSType.A_NS);
        }
コード例 #8
0
ファイル: OrgNamePraserTest.cs プロジェクト: yonglehou/nepy
        public void TestParseFullSentenceForSchool()
        {
            ParseResultCollection prc = ParseChineseOrgName("09/01/1996 – 07/01/1999  安徽省肥东第二中学高中部学习");

            Assert.AreEqual(1, prc.Count);
            GeneralParserTest.AssertParseResult(prc[0], "安徽省肥东第二中学", 25, POSType.A_NT);

            prc = ParseChineseOrgName("09/01/1999 – 07/01/2003  安徽大学数学系数学与应用数学专业学习");
            Assert.AreEqual(1, prc.Count);
            GeneralParserTest.AssertParseResult(prc[0], "安徽大学", 25, POSType.A_NT);

            prc = ParseChineseOrgName("09/01/1999 – 07/01/2003  清华大学数学系");
            Assert.AreEqual(1, prc.Count);
            GeneralParserTest.AssertParseResult(prc[0], "清华大学", 25, POSType.A_NT);

            prc = ParseChineseOrgName("北京大学、清华大学和中国人民大学高居2008中国最受媒体关注大学排行榜前三强");
            Assert.AreEqual(4, prc.Count);
            GeneralParserTest.AssertParseResult(prc[0], "北京大学", 0, POSType.A_NT);
            GeneralParserTest.AssertParseResult(prc[1], "清华大学", 5, POSType.A_NT);
            GeneralParserTest.AssertParseResult(prc[2], "中国人民大学", 10, POSType.A_NT);
            GeneralParserTest.AssertParseResult(prc[3], "中国最受媒体关注大学", 22, POSType.A_NT);
        }