`
xiao5233
  • 浏览: 26219 次
  • 性别: Icon_minigender_1
  • 来自: 湖南
社区版块
存档分类
最新评论

lucene中的空格

    博客分类:
  • 111
 
阅读更多

在搜索中如果输入"a  b"进行搜索上是"或者"的关系: a OR b,但如果你是针对多个域进行搜索的话就会出现问题

比如你的本意是或者tag:a或者tag:b 或者title:a或者title:b,搜索表达式为tag:a tag:b title:a title:b,
但当你输入a b,情况并非如此,此时的搜索表达式是tag: a b title a b,与之等价的表达式为tag:a tag:b title:a tag:b(假设你的默认域为tag)也就是说如果你输入的关键字中含有空格,那么空格会被自动转化成"默认域:空格后与下一个空格之间的值,就像上面的例子那样,在单个域搜索是不会出现这种情况的.

另外如果你在构造seacher的时候设置默认域为null的话,程序会抱错,如果设为空串,那么空格之后的咚咚,搜索引擎不予理会.

分享到:
评论

相关推荐

    lucene.NET 中文分词

    在Lucene.NET中,为了支持中文分词,通常需要结合第三方分词器,如IK Analyzer、HanLP、jieba.NET等。这些分词器具备丰富的词汇库和优秀的分词算法,能有效地对中文文本进行拆分。 - **IK Analyzer**:是一个开源的...

    Lucene中文分词器组件

    Lucene是一个强大的全文检索库,广泛应用于搜索引擎开发和其他信息检索系统中。它提供了高效、可扩展的文本搜索功能,但是默认情况下并不支持中文处理。为了在Lucene中处理中文文本,我们需要引入专门的中文分词器...

    Lucene中文切词(完整版)

    中文切词是自然语言处理(NLP)中的一项基本任务,因为中文没有明显的词与词之间的边界,如空格。在处理中文文本时,我们需要先将连续的汉字序列(句子或段落)正确地切分成一个个单独的词语,才能进行后续的分析和...

    lucene中文分词

    在Lucene中,分词工作主要由Analyzer类来完成。Analyzer是 Lucene 提供的一个接口,用户可以通过实现这个接口来自定义分词策略。默认情况下,Lucene并不支持中文分词,因此我们需要引入专门的中文分词器。"je-...

    基于词典的最大匹配的Lucene中文分词程序

    在Lucene中,我们可以使用IK Analyzer、Smart Chinese Analyzer或HanLP等第三方分词器,它们都实现了基于词典的最大匹配分词策略。这些分词器通常包括以下步骤: - 读取词典:加载词典文件,构建Trie树或其他高效的...

    compass2.1.4包+所用lucene包+中文分词器

    Compass 是一个基于 Lucene 的全文检索框架,它提供了一种高级的、面向对象的方式来管理和集成搜索引擎到你的应用程序中。在“compass2.1.4包”中,包含了 Compass 框架的版本 2.1.4,这个版本可能包含了性能优化、...

    Lucene5.3.1相关jar包

    在"Lucene5.3.1相关jar包"中,这些jar文件通常包含了Lucene的核心组件、模块和必要的依赖,以便开发者能够直接在项目中引入并使用Lucene的功能。 中文分词器是Lucene针对中文文本处理的重要组成部分。由于中文句子...

    Lucene的系统结构

    Apache Lucene 是一个高性能、全文本搜索引擎库,广泛应用于各种信息检索系统中。其系统结构的深入理解对于开发者来说至关重要,因为它揭示了Lucene如何高效地处理文本数据并执行复杂的查询操作。 1. **Lucene的包...

    Lucene 全文检索的 各种例子

    在这个“Lucene全文检索的各种例子”中,我们将探讨如何使用不同的分词器,如ikAnalyzer和smartChineseAnalyzer,来实现中文文本的索引和搜索。 首先,让我们深入理解一下Lucene。Lucene的核心功能包括文档的索引和...

    lucene3.5中文分词案例

    Lucene是一个开源的全文搜索引擎库,广泛应用于各种信息检索系统中。在3.5版本中,Lucene已经支持了中文分词,这对于处理中文文档和搜索需求显得尤为重要。本文将深入探讨Lucene 3.5在中文分词方面的实现,以及如何...

    Lucene2.1 Source Code,分词源码

    在 Lucene 2.1 版本中,它已经支持了对中文的处理,包括中文分词,这使得它在中国市场应用广泛。 Lucene 的核心设计思想是将文本数据转化为倒排索引(Inverted Index),这是一种高效的数据结构,能够快速地定位到...

    利用Lucene 实现高级搜索

    例如,若文档由多个字段组成,如标题(Title)和内容(Content),则可以通过“Title:Lucene AND Content:Java”这样的查询,精确查找标题中包含“Lucene”,同时内容中包含“Java”的文档。 #### 代码示例 以下是...

    lucene第一步---5.中文分词IKAnalyzer和高亮highlighter的使用

    标题中的“lucene第一步---5.中文分词IKAnalyzer和高亮highlighter的使用”指出,这个主题将探讨如何在Lucene中应用IKAnalyzer进行中文分词,以及如何使用高亮器(highlighter)来突出搜索结果中的关键词。Lucene是...

    Lucene.Net 中文文本分析器

    在这个主题中,我们将聚焦于“Lucene.Net中文文本分析器”,这是一个特别针对中文文本处理的组件。 中文文本分析器是搜索引擎中的关键组成部分,因为中文语言的特性使得分词成为必不可少的步骤。传统的英文分析器...

    lucene搜索引擎配置详解

    在Lucene中,首先需要将待搜索的数据加载到内存或磁盘上的某个结构中。这通常涉及到读取各种类型的文件,如文本、PDF、HTML等。使用Lucene的`Document`类来表示单个文件或数据记录,然后通过`Field`对象将文件内容...

    Lucene3.0分词系统.doc

    以下是对Lucene3.0分词系统中涉及的关键知识点的深入解析。 ### 英文分词原理 英文分词相较于中文来说较为简单,因为英文单词间通常以空格作为天然的分隔符。然而,为了提高搜索效率和准确性,Lucene3.0采用了更...

    lucene中文搜索

    在Lucene中,对中文的支持主要体现在以下几个关键知识点上: 1. **分词器(Tokenizer)**: 中文不同于英文,单词之间没有明显的边界,如空格或标点符号。因此,对中文文档进行索引前,需要先进行分词。Lucene为此...

    Lucene.Net +盘古分词 搜索引擎

    在项目中,你需要创建索引器类,用于读取数据并使用盘古分词进行分词,然后将分词结果作为文档添加到Lucene.Net的索引中。同时,还需要实现查询解析器,将用户输入的查询字符串转化为可以匹配索引的查询对象。 创建...

    Lucene 搜索方法(短语搜索)

    在实际应用中,我们可能需要考虑到词汇的位置偏移量,因为文档中的词汇可能会有空格、标点符号等影响。Lucene为此提供了`setSlop(int slop)`方法,允许短语中的词汇有一定的位置差距,`slop`就是这个差距的值。例如...

Global site tag (gtag.js) - Google Analytics