lucene 支持的检索语法和检索运算符分类列表

lucene 支持的检索语法和检索运算符分类列表

        近期用到 lucene ,读了一些文档,因为以前一直用开发商用引擎或用商用引擎的原因,所以一上来就想找比较完整的分类文档,主要是lucene的数据类型,支持的运算符,运算能力,各种功能的性能推荐等等。后来发现lucene文档很详细,内容很全了,可惜有些内容没有汇总,散落在各处,找了半天也没找到个全的,自己动手总结了一个。

 

 

检索请求语法:

基本形式: q=检索项和运算符组成的检索请求表达式

检索项:

1,  检索字段名称(在建立索引时候给定)

1.1用户可以指定要检索的字段,语法为 字段名=检索串

1.2不输入情况下,自动检索默认检索字段,建立索引时设置

1.3多字段之间可以进行逻辑运算检索,默认情况下为或关系,

1.4字段内容范围 为紧邻的字符串,或者可以用括号运算符确认

2,  请求文本(非检索系统保留字的文本串)

2.1可以用双引号 括起来 当作一个多个词语的短语串整体来对待

2.2保留字如下:+ ,-, &&, ||, !, ( ), { }, [ ], ^, ", ~, *, ?, :, /,

2.3如果需要输入保留字,请自行做好转义  转义符如下:/

 

 

运算符列表

运算集名称

运算集备注

运算符名称

符号

解释

示例

逻辑运算符

支持

AND或者 &&

 

“A” AND “B”

OR 或者 ||

 

“A” OR “B”

NOT或者 !

 

“A” NOT “B”

表示检索含有A但不含有B

存在操作符

+

 

+A OR “B”

禁止操作符

-

 

“A”-“B”

表示A的结果中除去B的结果

括号

()

提升优先级别

(A | B) @ C

范围运算符

支持

 

 

 

 

 

 

 

 

开区间

( TO )

 

(2 TO 18)

闭区间

[ TO ]

 

[ apple TO bear ] 

同在运算符

当前不支持

同句

s , S

 

A s B

不同句

nots ,NOTS

 

A nots B

同段

p ,P

 

A p B

不同段

notp ,NOTP

 

A notp B

邻近运算符

支持

 

“word1空格word2”~数字

 

“A B”~10

表示 检索AB之间

 

 

 

 

 

 

 

 

 

 

 

 

通配符

支持

01字符

?

 

Englishman?

多字符

+

 

Englishm+

模糊运算符

支持

 

~浮点型权值

只支持英文,并且按照应分分析方法建立的字段

在一个具体的检索词或者部分后面添上运算符 fa~

结果可以得到 如 father

默认情况下权值为0.2 可以用户指定

China~1.5

权值指定

支持

 

^权值数字

支持词,短语,字段

例如:

1,A^3 B

2,“A AND B”^2 “C D”

 

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
使用Lucene实现对MySQL数据表的全文检索是一种可行的方案。Lucene是一套开源的全文检索和搜寻的程式库,它提供了一个简单但强大的应用程式接口,能够实现全文索引和搜寻的功能。在Java开发环境中,Lucene是一个成熟的免费开源工具,被广泛应用于信息检索领域。 全文检索是一种针对非结构化数据的检索方法,对于像磁盘上的文件、网站资源等非结构化数据,无法使用SQL语句进行查询,因此需要使用全文检索法。全文检索法将非结构化数据中的一部分信息提取出来进行组织,形成索引,然后根据索引快速定位到要查找的信息。Lucene可以实现全文检索的功能,它是Apache软件基金会支持和提供的工具包。 使用Lucene实现全文检索的流程如下: 1. 创建索引:首先获取要进行检索文档,可以是磁盘文件或网站资源等,然后构建文档对象,包括多个域,如文件名称、文件路径、文件大小、文件内容等。接下来对文档进行分词,将分词结果创建为索引并添加到索引库中。 2. 索引搜索:创建查询对象,执行查询并渲染结果。在倒排索引词典表中查找对应搜索词的索引,然后找到索引所链接的文档。例如,搜索语法为"fileName:lucene"表示搜索文件名中包含Lucene文档。 要使用Lucene实现全文检索,首先需要下载和配置Lucene。你可以从官方网站或其他可信的资源下载Lucene的安装包,并按照相应的指南进行配置。然后,你可以使用Lucene提供的API来实现全文检索功能,根据具体需求进行代码编写和调用。 总之,Lucene是一种强大的全文检索工具,可以帮助你在MySQL数据表中实现全文检索功能。你可以通过学习和使用Lucene的API来了解更多关于Lucene的功能和用法,并根据具体需求进行相应的实现。<span class="em">1</span><span class="em">2</span><span class="em">3</span> #### 引用[.reference_title] - *1* *2* [【springboot微服务】Lucence实现Mysql全文检索](https://blog.csdn.net/zhangcongyi420/article/details/129940816)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v92^chatsearchT3_1"}}] [.reference_item style="max-width: 50%"] - *3* [【Lucene&Solr】Lucene实现全文检索](https://blog.csdn.net/qq_43705275/article/details/107229299)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v92^chatsearchT3_1"}}] [.reference_item style="max-width: 50%"] [ .reference_list ]

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值