`
wwty
  • 浏览: 536898 次
  • 性别: Icon_minigender_1
  • 来自: 北京-郑州
社区版块
存档分类
最新评论

lucene当中的各种query(三)

阅读更多

MultiTermQuery包含以下query:

FuzzyQuery, NumericRangeQuery, PrefixQuery, TermRangeQuery, WildcardQuery

FuzzyQuery是一种模糊查询,它可以简单地识别两个相近的词语。 即相似度匹配

NumericRangeQuery数字形式的范围查询

PrefixQuery前缀搜索A Query that matches documents containing terms with a specified prefix. A PrefixQuery is built by QueryParser for input like app*.

TermRangeQuery:主要用于文本范围查找;

使用通配符查询,*代表0个或多个字母,?代表0个或1个字母。

Query query=new WildcardQuery(new Term("contents","?ild*"));

Hits hits=searcher.search(query);

使用QueryParser和wildcardQuery使用的是相同的语法。但使用QueryParser时,首个字母不能是通配符

 


SpanQuery按照词在文章中的距离或者查询几个相邻词的查询

SpanQuery包括以下几种:

SpanTermQuery:词距查询的基础,结果和TermQuery相似,只不过是增加了查询结果中单词的距离信息。

SpanFirstQuery:在指定距离可以找到第一个单词的查询。

SpanNearQuery:查询的几个语句之间保持者一定的距离。

SpanOrQuery:同时查询几个词句查询。

SpanNotQuery:从一个词距查询结果中,去除一个词距查询。

 

 

ConstantScoreQuery

A query that wraps a filter and simply returns a constant score equal to the query boost for every document in the filter

看了一下这个类的构造函数ConstantScoreQuery(Filter filter) ,我的理解就是通过构造filter来完成文档的过滤,并且返回一个复合当前过滤条件的文档的常量分数,这个分数等于为查询条件设置的boost

 

CustomScoreQuery

org.apache.lucene.search.function Class CustomScoreQuery

WARNING: The status of the search.function package is experimental. The APIs introduced here might change in the future and will not be supported anymore in such a case.

根据api的说明,本query暂时不了解

 

ConstantScoreQuery

A query that wraps a filter and simply returns a constant score equal to the query boost for every document in the filter

看了一下这个类的构造函数ConstantScoreQuery(Filter filter) ,我的理解就是通过构造filter来完成文档的过滤,并且返回一个复合当前过滤条件的文档的常量分数,这个分数等于为查询条件设置的boost

 

CustomScoreQuery

org.apache.lucene.search.function Class CustomScoreQuery

WARNING: The status of the search.function package is experimental. The APIs introduced here might change in the future and will not be supported anymore in such a case.

根据api的说明,本query暂时不了解


ValueSourceQuery以及其子类FieldScoreQuery
这两个类也是位于org.apache.lucene.search.function下,所以暂时不了解

分享到:
评论

相关推荐

    lucene,lucene教程,lucene讲解

    public void add(Query query, BooleanClause.Occur occur) BooleanClause用于表示布尔查询子句关系的类,包括: BooleanClause.Occur.MUST,BooleanClause.Occur.MUST_NOT,BooleanClause.Occur.SHOULD。 有以下6...

    Lucene时间区间搜索

    c#下实现Lucene时间区间查询匹配。主要还是对Lucene查循对像Query的实现

    lucene中的SpanQuery和PhraseQuery详解(有图示)

    本文档详细讲解了各种SpanQuery的用法,以及它跟PhraseQuery的区别

    lucene3.3的全部jar包

    lucene3.3的全部jar包ant-1.7.1.jar ant-junit-1.7.1.jar commons-beanutils-1.7.0.jar ...lucene-xml-query-parser-3.3.0.jar maven-ant-tasks-2.1.1.jar xercesImpl-2.9.1-patched-XERCESJ-1257.jar

    lucene-query-string-builder:使用基本功能构建复杂的Lucene查询字符串

    npm install lucene-query-string-builder --save 特征 创建术语字符串时转义lucene特殊字符 包含所有lucene用途的运算符 简单的lucene.builder函数,用于定义lucene查询构建器 用法 让我们看看如何使用Lucene查询...

    Lucene5学习之SpellCheck拼写纠错

    NULL 博文链接:https://iamyida.iteye.com/blog/2206107

    Lucene3.0之查询类型详解

    Lucene3.0之查询处理(1):原理和查询类型 各种Query对象详解

    lucene2.9.1完整DEMO及开发文档

    把用户输入的查询字符串封装成Lucene能够识别的Query对象。 3) Filter: 用来过虑搜索结果的对象。 4) TopDocs: 代表查询结果集信息对象。它有两个属性: a) totalHits: 查询命中数。 b) scoreDocs: 查询结果信息...

    lucene第一天完整代码

    @Test public void testBooleanQuery() throws Exception { IndexSearcher indexSearcher = getIndexSearcher(); BooleanQuery booleanQuery = ... Query query2 = new TermQuery(new Term("fileName","lucene"));

    lucene例子

    它可以用于为各种应用程序构建搜索功能,比如电子邮件客户端、邮件列表、Web 搜索、数据库搜索等等。Wikipedia、TheServerSide、jGuru 和 LinkedIn 等网站都使用了 Lucene。 Lucene 还为 Eclipse IDE、Nutch(著名的...

    Lucene 3.6 学习笔记

    第三章 搜索功能 8 3.1 简单搜索 8 (1) 创建IndexReader 8 (2) 创建IndexSearcher 8 (3) 创建Term和TermQuery 9 (5) 根据TopDocs获取ScoreDoc 9 (6) 根据ScoreDoc获取相应文档 9 3.2 其他搜索 9 (1) 范围查询...

    lucene 4.3所用到的包

    全文检索lucene 4.3 所用到的3个jar包,包含lucene-queryparser-4.3.0.jar、 lucene-core-4.3.0.jar、lucene-analyzers-common-4.3.0.jar。

    lucene-query-parser:Lucene查询字符串解析器用作Web api查询或过滤器字符串

    Lucene查询解析器 Lucene查询字符串解析器,用作Web api查询或过滤器字符串。 基本代码来自 ...composer require "smallhomelab/lucene-query-parser" 用法 $ parseTree = ( new LucenenQueryParser \

    Lucene查询工具LQT.zip

    usage: LuceneQueryTool [options] --analyzer <arg> for query, (KeywordAnalyzer | StandardAnalyzer) (defaults to KeywordAnalyzer) --fields <arg> fields to include in output (defaults to all) -i,--...

    Apache Lucene全文检索和IKAnalyzer分词工具类

    import org.apache.lucene.search.Query; import org.wltea.analyzer.IKSegmentation; import org.wltea.analyzer.Lexeme; /** * Apache Lucene全文检索和IKAnalyzer分词工具类 * <p>Company: 91注册码 * time:...

    我封装的搜索引擎之lucene篇

    NULL 博文链接:https://sunhao-java.iteye.com/blog/1874396

    lucene2.9.1所有最新开发包及源码及文档

    提供了索引搜索器IndexSearcher类和各种Query类,如TermQuery、BooleanQuery等。 6) queryParser模块:负责查询语句的语法分析。提供了解析查询语句的QueryParser类 7) util模块:包含一些公共工具类。 5. 创建...

    lucene笔记

    1、 Lucene介绍 a) 什么是lucene b) 全文检索的应用场景 c) 全文检索定义 2、 Luence实现全文检索的流程(重点...a) 通过Query子类创建查询对象 b) 通过QueryParser创建查询对象 7、 相关度排序 8、 中文分词器(重点)

    struts2 + spring + lucene_search 实例

    import org.apache.lucene.search.Query; /** * 张超 * ago52030@163.com * @author Administrator * */ public class WareSearch { public Hits search(String key, String city) { Hits hits = null; ...

    lucene-fluent-query-builder:围绕构建 Lucene.Net 查询的便捷 Fluent-API

    lucene-fluent-query-builder 使用 Lucene 的 API 构建查询可能有点麻烦,至少是冗长的。 此类尝试使用 Fluent 接口模式使编写查询尽可能简单。安装PM > Install-Package LrNet.Lucene.Fluent 首先,在使用查询构建...

Global site tag (gtag.js) - Google Analytics