手机版

Lucene.Net实现搜索结果分类统计功能(中小网站)

时间:2021-09-05 来源:互联网 编辑:宝哥软件园 浏览:

最近我们搜索站的一个搜索系统的客户需要一个无限分类和分类统计功能,要达到的效果如下:

但由于搜易站的搜索系统是基于Lucene.net 2.0开发的,没有内置分类统计搜索功能,只能自行实现。考虑到客户的总数据量和搜索量都不是特别大,所以以简单有效的方式实现:

因为涉及到分类的操作,但每个站点的分类体系还是有些不同,本文主要提供思路和一些示范代码,供有需要的童鞋参考:

思考:

首先认为Lucene的搜索结果是一个Hits对象,Hits实际上是搜索结果文档的集合对象,所以遍历这个集合对象并与给定的分类字段进行比较,存在性为1。

代码示例:

露西。点击量=搜索者。搜索(query string);int hcount=点击次数。长度();露西。净单据,单据单据=空;for(int I=0;I计数;i ){ doc=点击量。文件(一);字符串c1=文档。GetField('Cate1 ')。string VaLue();//判断它是否存在于给定的分类集中,并添加1 if(parameter . cate 1 groups . contains key(C1)){ parameter . cate 1 groups[C1]=parameter . cate 1 groups[C1]1;} else { parameter。类别1组。添加(c1,1);}}适用场景:

这种实现方式适用于中小型网站,在数据量和搜索量不大时可以使用。

如上所述,边肖推出的Lucene.Net(中小网站)实现了搜索结果的分类统计功能。希望对大家有帮助。如果你有任何问题,请给我留言,边肖会及时回复你。非常感谢您对我们网站的支持!

版权声明:Lucene.Net实现搜索结果分类统计功能(中小网站)是由宝哥软件园云端程序自动收集整理而来。如果本文侵犯了你的权益,请联系本站底部QQ或者邮箱删除。