RegexpQuery|学习笔记

简介: 快速学习 RegexpQuery。

开发者学堂课程【ElasticSearch 最新快速入门教程RegexpQuery】学习笔记,与课程紧密联系,让用户快速学习知识。

课程地址:https://developer.aliyun.com/learning/course/642/detail/10655


RegexpQuery

 

内容介绍

一、 ES JavaAPI regexpQuery

二、 案例实操

 

一、 ES JavaAPI regexpQuery

假设现在你想匹配在 W 地域(Area)的所有邮政编码,那我们怎样来匹配呢?

(1) Regexp匹配

命令行:curl-XGET ‘http://localhost:9200/my_index/address/search -d’

{

“query”:{

“regexp”:{

“postcode”:W[0-9].+

}

}

}

这个正则表达式规定了词条需要以 W 开头,紧跟着一个0到9的数字,然后是一个或者多个其他字符。

Regexp 所要匹配的字段要以正则式的形式出现。如以上代码中“W[0-9].+”。

(2) 案例

正则表达式查询

Responsebuilder.setQuery(QueryBuilders.regexpQuery(field,regexp))

 

三、 案例实操

(1) regexpQuery 演示

*案例:查询索引库之 bigdata 下的 type 之 product 下 name 字段值中包含有 oo 的索引信息。(使用 regexpQuery 的形式实现)

@Test

public void testRegexpQuery(){

//正则表达式

String regex=.+oo.+”;

//查询

SearchResponse response=client.prepareSearch(INDEX)

.setTypes(TYPE)

.setQuery(QueryBuilders.regexpQuery(name:“name”,regex))

.get();

//显示检索到的信息

SearchHits hits = response.getHits();

for(SearchHits hit:hits){

System.out.println(hit.getSourceAsString());

}

(3) 运行结果

“C:\Program Files\Java\jdk1.8.0_131\bin\java.exe

前端处理操作,用于进行全局的初始化

{“author”:“杰克逊”,“last_version”:“2.1.0”,“name”:“sqoop”}

{“author”:“施瓦辛格”,“name”:“hadoop”,“version”:“3.1.2”}

后处理操作,用于进行资源的释放

(4) 数据库附图

image.png

相关文章
|
12月前
|
Kubernetes 网络协议 程序员
k8s 学习笔记 - LimitRange 限制范围
k8s 学习笔记 - LimitRange 限制范围
227 0
|
开发者
整合的实现 | 学习笔记
快速学习整合的实现.
整合的实现 | 学习笔记
|
NoSQL MongoDB 开发者
故障测试_1|学习笔记
快速学习故障测试_1
127 0
故障测试_1|学习笔记
|
Java 开发者
Loger 的使用|学习笔记
快速学习 Loger 的使用
399 0
Loger 的使用|学习笔记
|
机器学习/深度学习 算法 开发者
神经元模型| 学习笔记
快速学习神经元模型。
298 0
神经元模型| 学习笔记
|
Java 开发工具 C++
notepad++ 介绍|学习笔记
快速学习 notepad++ 介绍
244 0
notepad++ 介绍|学习笔记
|
分布式计算 算法 Hadoop
fuzzyQuery | 学习笔记
快速学习 fuzzyQuery
151 0
fuzzyQuery | 学习笔记
|
移动开发 JavaScript HTML5
NgForm学习笔记
NgForm学习笔记
146 0
NgForm学习笔记
|
存储 自然语言处理 算法
课程计划|学习笔记
快速学习课程计划