`
deepfuture
  • 浏览: 4397768 次
  • 性别: Icon_minigender_1
  • 来自: 湛江
博客专栏
073ec2a9-85b7-3ebf-a3bb-c6361e6c6f64
SQLite源码剖析
浏览量:80022
1591c4b8-62f1-3d3e-9551-25c77465da96
WIN32汇编语言学习应用...
浏览量:69995
F5390db6-59dd-338f-ba18-4e93943ff06a
神奇的perl
浏览量:103284
Dac44363-8a80-3836-99aa-f7b7780fa6e2
lucene等搜索引擎解析...
浏览量:285617
Ec49a563-4109-3c69-9c83-8f6d068ba113
深入lucene3.5源码...
浏览量:15001
9b99bfc2-19c2-3346-9100-7f8879c731ce
VB.NET并行与分布式编...
浏览量:67492
B1db2af3-06b3-35bb-ac08-59ff2d1324b4
silverlight 5...
浏览量:32099
4a56b548-ab3d-35af-a984-e0781d142c23
算法下午茶系列
浏览量:45965
社区版块
存档分类
最新评论

lucene-使用QueryParser和IndexSearcher

阅读更多

QueryParser

QueryParser把查询表达式转换为lucene内置的查询类型

查询表达式

匹配的文档

java

默认域包含java项的文档

java junit

java or junit

默认域中包含java和junit中的一个或两个文档。

+java +junit

java AND junit

默认域中同时包含java和junit的文档

title:ant

Title域中包含ant项的文档

title:extreme

-subject:sports

title:extreme

AND NOT subject:sports

Title域中包含extreme且subject域中不包含sports的文档

(agile OR extreme) AND methodology

默认域中包含methodology且包含agile和extreme的一个或两个项的文档

Title:”junit in action”

Title域为junit in action的文档

Title:”juint action” -5

Title域中junit和action之间距离少于5的文档

Java*

包含由java开头的项的文档

Java-

包含与java相似的文档

Lastmodified:[1/1/04 to 12/31/04]

Lastmodified域值在1/1/04和12/31/04之间的文档

IndexSearcher实例只搜索在它被实例化时已存在的索引。如果制作索引和搜索并发进行,那么最新索引的文档对搜索来说是不可见的。

IndexSearcher.search的函数声明

使用场合

Hits search(Query query)

直接进行搜索,无需过滤

Hits search(Query query,Filter filter)

在过滤标准的约束下,把搜索限制在有效文档子之内

Void search(Query query,HitCollector results)

只有当我们需要使用搜索返回的所有文档时才调用这个方法。一般来说,只有搜索结果中前几个文档才是我们所需的,所有使用此方法会降低程序性能

分享到:
评论

相关推荐

    最新全文检索 lucene-5.2.1 入门经典实例

    本篇文章将深入探讨Lucene-5.2.1的关键知识点,通过实例解析其工作原理和使用方法。 1. **Lucene核心组件** - **Analyzer**:文本分析器是Lucene处理文本的第一步,它负责将输入的字符串分解为一系列的词项...

    lucene-4.0.0-src.zip 【Lucene 4.0.0源码包src , source】

    4. **学习与实践**:结合官方文档、社区资源和实际项目,逐步熟悉Lucene的使用和源码结构,加深对搜索技术的理解。 总的来说,通过深入学习Lucene 4.0.0的源码,开发者不仅能掌握搜索引擎的基础原理,还能了解到...

    lucene-4.2.1-src.tgz

    `IndexSearcher`是最常见的实现,它使用倒排索引来查找与查询匹配的文档。同时,Lucene支持评分机制,通过`Similarity`接口来计算文档的相关度。 5. **文档存储**:`Directory`接口表示索引的存储位置,如文件系统...

    lucene-5.5.3.zip

    这个"lucene-5.5.3.zip"压缩包包含了Lucene 5.5.3版本的所有组件和资源,使得开发人员可以方便地集成到自己的项目中。 1. **Lucene核心概念** - **索引**:Lucene的核心是建立倒排索引,它将文本内容转换成可快速...

    lucene-3.0.1库及源代码

    3. **搜索索引**:利用QueryParser构建查询对象,然后使用IndexSearcher执行查询,获取搜索结果。 4. **调试与优化**:通过阅读源代码,理解底层逻辑,可以针对性地优化性能,解决搜索问题。 总结,Lucene 3.0.1是...

    lucene-3.5.0.jar

    本文将深入探讨Lucene 3.5.0的核心特性和使用技巧。 首先,Lucene是一个开源的、高性能的全文检索框架,由Apache软件基金会维护。它并非完整的搜索引擎,而是提供了一套强大的索引和搜索工具,允许开发者构建自己的...

    lucene-2.1.0-src.zip

    - **API改进**:提供了一个更简洁、直观的API,使得开发者更容易理解和使用Lucene的功能。 - **多语言支持**:2.1.0版本增强了对多语言的支持,包括对中文等非英文字符集的处理。 3. **使用Lucene进行搜索** - *...

    官方最新完整版lucene-6.6.0.zip

    2. **搜索索引**:使用`IndexSearcher`进行搜索,`QueryParser`帮助解析查询字符串。 3. **读取索引**:`DirectoryReader`用于读取索引,获取文档信息。 4. **评分模型**:通过`Similarity`接口定制评分策略。 5. **...

    lucene-5.2.1-src.tgz

    通过深入研究`lucene-5.2.1-src.tgz`中的源代码,开发者可以了解Lucene的工作机制,定制自己的搜索解决方案,或为项目贡献代码,进一步提升Lucene的功能和性能。总之,Apache Lucene 5.2.1是一个强大且灵活的搜索...

    lucene-7.3.0

    - **执行查询**:使用QueryParser解析查询字符串,并通过IndexSearcher进行查询,获取匹配的文档。 - **结果处理**:得到查询结果后,使用ScoreDoc和Document类来获取文档的相关信息和评分。 5. **最佳实践** - ...

    lucene查询工具类和IndexSearcher分页查询示例

    在本文中,我们将深入探讨如何使用Lucene查询工具类和`IndexSearcher`进行分页查询,这在处理大量数据时尤其有用。Lucene是一个强大的全文搜索引擎库,它提供了高效、可扩展的文本检索功能。在Java开发环境中,...

    lucene-2.9.3-src.zip

    - **查询执行**:使用Query对象(如TermQuery、BooleanQuery)和IndexSearcher,配合HitCollector或TopDocs来获取结果。 - **结果处理**:Hit、ScoreDoc等类用于表示搜索结果,可以获取文档ID、得分等信息。 6. *...

    全文搜索Lucene&ElasticSearch-新版.doc

    入门Lucene时,可以创建一个简单的HelloWorld程序,使用Lucene提供的API如IndexWriter进行索引的创建和维护,以及IndexSearcher进行索引的搜索。在Java环境中,需要引入相关的Lucene库,如lucene-analyzers-common、...

    最新版windows lucene-8.5.1.zip

    2. 搜索文档:构造Query对象,使用IndexSearcher执行搜索,ResltSet获取结果。 3. 关闭资源:确保使用完毕后,关闭IndexWriter和IndexReader以释放资源。 五、问题与解决方案 在Windows环境下,可能会遇到磁盘权限...

    lucene jar包

    3. 查询索引:使用`IndexSearcher`和`QueryParser`构建并执行查询,获取匹配的文档。 4. 打分和排序:Lucene使用TF-IDF算法对匹配的文档进行打分,并根据分数进行排序。 5. 检索结果:从`TopDocs`对象中获取最相关的...

    最新版windows lucene-8.8.0.zip

    2. 执行搜索:使用QueryParser创建查询对象,然后通过IndexSearcher执行搜索,获取匹配的结果集。 3. 结果排序与过滤:Lucene支持自定义评分函数和Filter,可以根据需要对搜索结果进行排序和过滤。 总结,Apache ...

    lucene-3.0.2-dev-src

    Lucene的查询解析器如`QueryParser`将用户输入的查询字符串转换为内部的查询对象。`Query`接口及其子类代表不同的查询类型,如`TermQuery`、`BooleanQuery`等。查询执行由`IndexSearcher`完成,它根据索引来查找...

    lucene-4.10.3源码

    `src/core/org/apache/lucene/queryparser`目录下,包含各种查询解析器,如`QueryParser`,用于将用户输入的查询语句转化为`Query`对象。 3. 搜索:`src/core/org/apache/lucene/search`目录下的代码实现了搜索算法...

    lucene-2.9.0-src.tar.gz

    Lucene社区活跃,不断有新的改进和扩展,如Solr和Elasticsearch,它们基于Lucene提供更高级的服务,如分布式搜索、集群管理和数据分析。 总结,通过对“lucene-2.9.0-src.tar.gz”的研究,我们可以深入学习全文检索...

    lucene.jar包,四包(全)

    - **lucene-core-3.6.0-javadoc.jar**:这个文件包含了Lucene 3.6.0核心组件的API文档,是开发者理解和使用Lucene的重要参考资料。它详细解释了每个类、接口和方法的功能和用法,便于查阅和学习。 - **lucene-test-...

Global site tag (gtag.js) - Google Analytics