Lucene.net 搜索引擎中中文词组分词的实现
2012-11-14 16:21
295 查看
Lucene.net标准分词器在英文分词中有非常好的体验。比喻说:在邮件,IP地址,符号处理方面,它都处理得非常好。只是很遗憾,它不支持中文词组分词。于是,我就通过修改里面的核心代码让它扩展,支持中文的分词。
目标:使它能够增加对中文词组的切词。
效果:
原句:“我是中国人!I am chiness!Email:youpeizun126@126.com;IP:172.17.34.168”
切词效果:
我/是/中国人/中国/中/国/人/Email/youpeizun126@126.com/IP/172.17.34.168
所要完成的任务:
1. 装载词库
2. 截取一段连续的中文字段
3. 进行连续的分词.
下面是设计扩展Lucene.net标准分词器的支持中文词组分词的流程图.
using System;
using System.Collections.Generic;
using System.Text;
using Lucene.Net.Analysis.Standard;
using Lucene.Net.Analysis;
using Lucene.Net.Index;
using Lucene.Net.Documents;
using System.IO;
using Lucene.Net.Analysis.Cn;
using Lucene.Net.Analysis.CJK;
//date:11-02-2007
//home page:http://www.cnblogs.com/xuanfeng
//author:peizunyou
namespace TokenizerTest
测试代代码下载
三、 五中分词器代码设计探究
从下面分词器代码设计中的静态结构图可以清晰的看出其继承关系。无论是哪个分词器,其分词最终实现的算法都是在Next()方法,想深入了解,请看其相关源码。
目标:使它能够增加对中文词组的切词。
效果:
原句:“我是中国人!I am chiness!Email:youpeizun126@126.com;IP:172.17.34.168”
切词效果:
我/是/中国人/中国/中/国/人/Email/youpeizun126@126.com/IP/172.17.34.168
所要完成的任务:
1. 装载词库
2. 截取一段连续的中文字段
3. 进行连续的分词.
下面是设计扩展Lucene.net标准分词器的支持中文词组分词的流程图.
using System;
using System.Collections.Generic;
using System.Text;
using Lucene.Net.Analysis.Standard;
using Lucene.Net.Analysis;
using Lucene.Net.Index;
using Lucene.Net.Documents;
using System.IO;
using Lucene.Net.Analysis.Cn;
using Lucene.Net.Analysis.CJK;
//date:11-02-2007
//home page:http://www.cnblogs.com/xuanfeng
//author:peizunyou
namespace TokenizerTest
测试代代码下载
三、 五中分词器代码设计探究
从下面分词器代码设计中的静态结构图可以清晰的看出其继承关系。无论是哪个分词器,其分词最终实现的算法都是在Next()方法,想深入了解,请看其相关源码。
相关文章推荐
- Beta笔记——搜索引擎的设计与实现(1):使用Lucene.Net建立索引与中文分词
- (转)lucene.net和(pangu)盘古分词 搜索引擎的简单实现
- .NET使用Lucene.Net和盘古分词类库实现中文分词
- lucene.net和(pangu)盘古分词 搜索引擎的简单实现
- 搜索引擎中中文词组分词的实现
- 基于.Net Framework 3.5的Lucene.Net 中文词组匹配分词器
- 展示一下Lucene+自创中文分词而做的电影、论坛搜索引擎
- 搜索引擎之中文分词实现(java版)http://dev.csdn.net/author/jnsuyun/93a3a18757e34954ad24e1a3a2a2902c.html
- Lucene.net中文分词探究
- Lucene.Net与盘古分词实现站内搜索
- Lucene.Net+盘古分词 实现搜索 Quartz.Net(定时任务) 实现热词统计
- jieba.NET是jieba中文分词的.NET版本(C#实现)。
- 关于Lucene.net中文分词后的结果着色问题
- 【盘古分词】Lucene.Net 盘古分词 实现公众号智能自动回复
- 《解密搜索引擎技术实战:Lucene&Java精华版》---第四章中文分词原理与实现学习笔记(一)
- 给lucene.net增加SCWS中文分词功能
- IKAnalyzer结合Lucene实现中文分词(示例讲解)
- Lucene下引入ICTCLAS进行中文分词的实现方法
- Lucene.Net 及 中文分词 资料列表
- .Net下的中文分词IKAnalyzerNet(基于Lucene.Net)