惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

Martin Fowler
Martin Fowler
J
Java Code Geeks
博客园 - 【当耐特】
宝玉的分享
宝玉的分享
腾讯CDC
D
DataBreaches.Net
Microsoft Azure Blog
Microsoft Azure Blog
Engineering at Meta
Engineering at Meta
V
V2EX
F
Fortinet All Blogs
MyScale Blog
MyScale Blog
让小产品的独立变现更简单 - ezindie.com
让小产品的独立变现更简单 - ezindie.com
T
Tailwind CSS Blog
Jina AI
Jina AI
GbyAI
GbyAI
大猫的无限游戏
大猫的无限游戏
A
About on SuperTechFans
酷 壳 – CoolShell
酷 壳 – CoolShell
爱范儿
爱范儿
OSCHINA 社区最新新闻
OSCHINA 社区最新新闻
U
Unit 42
B
Blog
M
MIT News - Artificial intelligence
N
Netflix TechBlog - Medium

祈雨的笔记

安全多方计算MPC spark原理解析 kueue执行源码分析 spark on k8s执行源码分析 spark-operator源码解析 系统压测遇到的缓存击穿问题 我的世界PC与安卓联机 蚂蚁金服流量投放平台的AIG改造 G1大对象致Old区占用率高 日志打印导致接口响应率下跌分析 Groovy加载类导致OOM分析 ERROR日志打印导致CPU满载 记OceanBase死锁超时 应用发版期间服务响应超时 Ark Serverless初探 系统优化复盘一二三 The user specified as a definer does not exist Kong网关初探 API网关选型调研 CPU火焰图常用工具 配置中心选型调研 root操作Nginx导致用户组错误 基于Proxifier使用代理 FastJSON字段智能匹配踩坑 Nacos初探 记一次Nginx服务器CPU满荷载故障 基于券系统分库分表的思考 limit不参与SQL成本计算致索引失效 Linux常用性能监控命令 golang低版本http2偶现400
lucene5(5)搜索api
祈雨的笔记 · 2017-10-01 · via 祈雨的笔记
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
QueryParser queryParser = new QueryParser("context",getAnalyzer());
Query query = null;
query = queryParser.parse("Identified");// 完整匹配分词查询
/**
* 通配符 ?,*的使用
*/
// 使用?匹配单个字符查询
//query = queryParser.parse("Identi?ied");

// 使用*匹配多个字符查询
//query = queryParser.parse("L*r");

/**
* 布尔运算AND, OR,NOT,+,-的使用,注意:一定要是大写的AND和OR,NOT
*/
// 使用OR联合多关键字查询,也可用空格代替OR
//query = queryParser.parse("Licensor OR ce*");

// 这个和使用OR一样的效果
//query = queryParser.parse(" Licensor ce*");

// +代表必须的条件,搜索文档必须包含Licensor 可能有Wildcard
//query = queryParser.parse("+Licensor Wildcard");

// 使用AND取多个关键字的并集查询
//query = queryParser.parse("Licensor AND ce* AND Licenso?");

// 搜索Lincensor Apache而不是Apache Licensor
//query = queryParser .parse("'Lincensor Apache' NOT 'Apache Licensor'");

// "-"同NOT的效果一样
//query = queryParser .parse("'Lincensor Apache' - 'Apache Licensor'");

/**
* 使用正则表达式查询
*/
// 这个匹配Lincensor,aicensor,bicensor分词
//query = queryParser.parse("/[Lab]icensor/");

// 根据需要可以更灵活的使用
//query = queryParser.parse("/[Lab]icenso[a-z]/");

/**
* 使用~模糊匹配查询 这个要和*号的用法区分下,*号完整通配多个字符查询,而~不是简单的通配,这个模糊匹配和Lucene的评分有关
*/
// 可以查到Licensor关键字,而queryParser.parse("icensor*")查不到
//query = queryParser.parse("icensor~");

// ~后面可加0-2的整数来制定模糊匹配度,默认不加为1
//query = queryParser.parse("Licens~1");

// ~还可以模糊匹配差异化N字符数的多个关键字
//query = queryParser.parse("Licens cens ~0");

/**
* 范围查询,多用于数字和时间的查询
*/
// {}abc与Licenszhi间的文件,不包含
//query = queryParser.parse("{abc TO Licens}");

// {}abc与Licenszhi间的文件,包含本身
//query = queryParser.parse("[abc TO Licens]");

/**
* 关键字加权处理查询
*/
// 默认为1,可加权可降权,可通过加权处理给匹配的结果排序
//query = queryParser.parse("Licensor Wildcard^4 ");

// 可使用()组合多个条件查询
//query = queryParser .parse("(+Licensor +Wildcard) AND easier");
// ps: 查询部分字符需要转义处理,如(+ - && || ! ( ) { } [ ] ^ " ~ * ? : \ /)