存档

文章标签 ‘全文检索’

lucene3短语查找PhraseQuery

2010年1月15日 没有评论 4,211 次阅读

用户在搜索引擎中进行搜索时,常常查找的并非是一个简单的单词,很有可能是几个不同的关键字。这些关键字之间要么是紧密相联,成为一个精确的短语,要么是可能在这几个关键字之间还插有其他无关的关键字。此时,用户希望将它们找出来。不过很显然,从评分的角度看,这些关键字之间拥有与查找内容无关短语所在的文档的分值...阅读全文

分类: java 标签: ,

lucene3.0范围查找TermRangeQuery

2010年1月8日 没有评论 6,618 次阅读

在lucene3.0中,范围查询也有很大的变化,RangeQuery已经不推荐使用,使用TermRangeQuery和NumericRangeQuery两个替代。 TermRangeQuery:主要用于文本范围查找; IndexReader reader = IndexReader        .open(FSDirectory.open(INDEX_DIR), true); // only searching, Searcher search...阅读全文

分类: java 标签: ,

lucene3.0中两个索引文件的联合查询

2009年12月29日 没有评论 4,313 次阅读

由于lucene生成索引文件比较耗时,索引我们可以把经常变动的和不变化的防到两个索引文件中,查询时使用联合查询,可以在两个索引中同时查找. IndexSearcher[] searchers = new IndexSearcher[2];  searchers[0] = new IndexSearcher(m_indexpath); searchers[1] = new IndexSearcher(m_outindexpath); MultiSearcher...阅读全文

分类: java 标签: ,

lucene删除索引中的数据

2009年12月18日 没有评论 3,300 次阅读

Lucene本身并不支持更新, 所以只能选择先删除再新增记录。 lucene本身支持两种删除模式 1,DeleteDocument(int docNum) //指定文档标号自动删除 2,DeleteDocuments(Term term) //删除所有出现该term的文档 前者是根据文档的编号来删除该文档,docNum是该文档进入索引时Lucene的编号,是按照顺序编的;后者是删除满足某一个...阅读全文

分类: java 标签: ,

lucene3.0 中BooleanQuery 的使用

2009年12月18日 没有评论 5,389 次阅读

lucene3.0中BooleanQuery 实现与或的复合搜索 . BooleanClause用于表示布尔查询子句关系的类,包括:BooleanClause.Occur.MUST,BooleanClause.Occur.MUST_NOT,BooleanClause.Occur.SHOULD。必须包含,不能包含,可以包含三种.有以下6种组合:    1.MUST和MUST:取得连个查询子句的交集。  2.MUST和MUST...阅读全文

分类: java 标签: ,

lucene3.0分词结果显示

2009年12月17日 没有评论 4,833 次阅读

lucene3.0升级后,以前的显示分词结果的语句完全不能用了,我们选择分词器又是必须的,到底我们的关键词分词后是怎么显示的呢,具体代码如下:     public class AnalyzerTest {          public static void main(String[] args)&...阅读全文

分类: java 标签: ,

lucene3.0中检索方法的使用介绍

2009年12月17日 没有评论 4,540 次阅读

  QueryParser是一个非常通用的帮助类,他的作用是把用户输入的文本转换为内置的Query对象(大多数web搜索引擎都提供一个查询输入框来让用户输入查询条件)。QueryParser内置提供了很多语法使可以使用输入的各种高级条件的 Query。为了保证查询的正确性,最好用创建索引文件时同样的分析器。QueryParser解析字符串时...阅读全文

分类: java 标签: , ,

Lucene3.0正式发布了

2009年12月16日 没有评论 3,265 次阅读

    Lucene3.0正式版于2009年11月25日发布了,2.X经过多年终于有了大版本的升级了. 在Lucene 3 中,发生了较大的变化。Jdk的版本必须是jdk5以上,使用了5的泛型和匿名注释.与上个版本2.9的使用方法是没有明显区别, QueryParser parser = new QueryParser(Version.LUCENE_CURRENT, field,analyz...阅读全文

分类: java 标签: , ,