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

相关文章
|
3月前
|
安全 C语言 C++
C++学习笔记
C++学习笔记
|
存储 SQL Java
JAP4|学习笔记
快速学习JAP4
206 0
JAP4|学习笔记
|
消息中间件 SQL 负载均衡
总结|学习笔记
快速学习总结
104 0
总结|学习笔记
|
数据可视化 Java 开发工具
超详细的vimtutor学习笔记(中)
第一讲 编辑 1.1 移动光标 使用 h、j、k、l 键可以使光标实现左、下、上、右的移动。 也可以使用 ↑ ↓ ← → 进行上下左右的移动。
110 0
|
人工智能 开发者
一点一世界 | 学习笔记
快速学习一点一世界
一点一世界 | 学习笔记
|
Java 开发工具 C++
notepad++ 介绍|学习笔记
快速学习 notepad++ 介绍
notepad++ 介绍|学习笔记
|
缓存 Dubbo 应用服务中间件
本地存根|学习笔记
快速学习本地存根
本地存根|学习笔记
|
存储 Java 开发者
BinaryTree|学习笔记
快速学习BinaryTree
BinaryTree|学习笔记
|
NoSQL MongoDB 数据库
模运算|学习笔记
快速学习模运算