lucence.net+盘古分词
2015-08-03 23:34
344 查看
第一步:
添加盘古和lucence的dll引用
第二步:
拷贝Dict文件夹到项目 demo里面是Dictionaries 不过官方建议改成Dict
然后把所有项右击属性 改为“如果较新则复制”
View Code
参开文档
http://www.cnblogs.com/birdshover/category/152283.html http://www.cnblogs.com/piziyimao/archive/2013/01/31/2887072.html
添加盘古和lucence的dll引用
第二步:
拷贝Dict文件夹到项目 demo里面是Dictionaries 不过官方建议改成Dict
然后把所有项右击属性 改为“如果较新则复制”
using Lucene.Net.Analysis; using Lucene.Net.Analysis.PanGu; using PanGu; using System; using System.Collections.Generic; using System.IO; using System.Linq; using System.Security.Cryptography; using System.Text; using System.Threading.Tasks; namespace CZBK.HeiMaOA.Common { public class WebCommon { /// <summary> /// 对字符串进行MD5运算 /// </summary> /// <param name="str"></param> /// <returns></returns> public static string Md5String(string str) { MD5 md5 = MD5.Create(); byte[] buffer = System.Text.Encoding.UTF8.GetBytes(str); byte[]md5Buffer= md5.ComputeHash(buffer); StringBuilder sb = new StringBuilder(); foreach (byte b in md5Buffer) { sb.Append(b.ToString("x2")); } return sb.ToString(); } //对输入的搜索条件进行分词 public static string[] PanGuSplitWord(string str) { List<string> list = new List<string>(); Analyzer analyzer = new PanGuAnalyzer(); TokenStream tokenStream = analyzer.TokenStream("", new StringReader(str)); Lucene.Net.Analysis.Token token = null; while ((token = tokenStream.Next()) != null) { list.Add(token.TermText()); } return list.ToArray(); } // /创建HTMLFormatter,参数为高亮单词的前后缀 public static string CreateHightLight(string keywords, string Content) { PanGu.HighLight.SimpleHTMLFormatter simpleHTMLFormatter = new PanGu.HighLight.SimpleHTMLFormatter("<font color=\"red\">", "</font>"); //创建Highlighter ,输入HTMLFormatter 和盘古分词对象Semgent PanGu.HighLight.Highlighter highlighter = new PanGu.HighLight.Highlighter(simpleHTMLFormatter, new Segment()); //设置每个摘要段的字符数 highlighter.FragmentSize = 150; //获取最匹配的摘要段 return highlighter.GetBestFragment(keywords, Content); } } }
View Code
参开文档
http://www.cnblogs.com/birdshover/category/152283.html http://www.cnblogs.com/piziyimao/archive/2013/01/31/2887072.html
相关文章推荐
- 将InputStream(输入流)转成String 的方法
- 学习指针型函数和指向函数的指针
- 前五天知识点总结
- 通俗理解TCP握手次数是三次
- 一个例子读懂风险投资
- 一个例子读懂风险投资
- 一个例子读懂风险投资
- JS之原型与原型链
- java 枚举类小结 Enum
- jQuery选择器总结
- hdu 1166 敌兵布阵
- js时间间隔和倒计时
- 数据结构之链表、栈和队列 java代码实现
- IOS绘图API绘制直线几何图形
- Oracle笔记-表的管理
- Android利用Binder类实现对服务的调用
- dom4j将xml转换成对象
- 父类不含无参构造方法子类构造方法必须显式调用
- Delphi二维码中文支持、分组、批量打印经验小结
- 递归