带你读《Elastic Stack 实战手册》之35:——3.4.2.17.4.Analyzers / Custom analyzers(7)

简介: 带你读《Elastic Stack 实战手册》之35:——3.4.2.17.4.Analyzers / Custom analyzers(7)

《Elastic Stack 实战手册》——三、产品能力——3.4.入门篇——3.4.2.Elasticsearch基础应用——3.4.2.17.Text analysis, settings 及 mappings——3.4.2.17.4.Analyzers / Custom analyzers(6) https://developer.aliyun.com/article/1229769



配置项

 

separator 单词连接符,默认使用空格。

 

max_output_size 文本输出最大长度,超过长度将不会返回,默认255。

 

GET /_analyze
{
  "tokenizer": "standard",
  "filter": [
    {
      "type": "fingerprint",
      "separator": "-",
    }
  ],
  "text": "A good cook  could cook cookies?"
}
#Response
[ A-cook-cookies-could-good ]

Keyword marker token filter

 

keyword_marker 过滤器用于标注不需要做词干提取的单词列表,此过滤器执行顺序在词干提取相关的过滤器之前。


GET _analyze
{
  "tokenizer": "standard",
  "filter": [
    {
      "type":"keyword_marker",
      "keywords":["loves","travelling"]
    },
    "stemmer"
    ],
    "text": ["Tony loves dancing and travelling"]
}
#Response
[ Toni, loves, danc, and, travelling ]

配置项

 

ignore_case 标注单词是否忽略大小写,默认 false。

 

keywords 指定不需要做词干提取的单词列表。

 

keywords_path 指定不做词干提取单词的文件目录,该文件需要保存在 Elasticsearch 目录下的 config 中,文件格式使用 utf-8,每行一个单词。


keywords_pattern 使用正则表达式匹配到的单词不进行词干提取。

 

需要注意 keywords,keywords_path 和 keywords_pattern 不能同时指定,设置其中一个即可。

 

Length token filter

 

length 过滤器会只保留字符长度在设定区间的单词,如返回长度大于3小于5的单词。

GET /_analyze
{
  "tokenizer": "standard",
  "filter": [
    {
      "type": "length",
      "max": 5,
      "min": 3
    }
  ],
    "text": "Hey,We Are Elasic"
}
#Response
[ Hey, Are ]


配置项

 

min(非必填)最小字符长度。

 

max(非必填) 最大字符长度。

 

Limit token count

 

limit 过滤器用于限制文本返回的单词数量,默认只返回第一个单词。


GET /_analyze
{
  "tokenizer": "standard",
  "filter": [
    {
      "type": "limit",
      "max_token_count":2    #1
    }
  ],
   "text": "Heya,We are Elasic "
}
#Response
[ Heya, We ]


#1 显示返回前两个单词。


配置项

 

max_token_count 限定返回单词数量,默认为1。

 

Lowercase token filter

 

lowercase 过滤器会根据语言把单词转换为小写字母,默认使用英文。


GET /_analyze
{
  "tokenizer": "standard",
  "filter": [
    {
      "type": "lowercase"
    }
  ],
  "text": "Heya,We are Elasic "
}
#Response
[ heya, we, are, elastic ]

配置项

 

language 针对特定语言的小写转换,参数支持 Greek,Irish,Turkish。

 

Uppercase token filter

 

uppercase 过滤器会将单词转换为大写字母。


GET /_analyze
{
  "tokenizer": "standard",
  "filter": [
    {
      "type": "uppercase"
    }
  ],
  "text": "Heya,We are Elasic "
}
#Response
[ HEYA, WE, ARE, ELASTIC ]

N-gram token filter

 

ngram 根据 N 元语法对单词进行切分,目的是将单词里每一个字符进行大小为 N 的滑动窗口操作,形成了长度是 N 的字节片段序列,切分的结果长可用于模糊匹配。默认最小长度1,最大长度2。 当长度差大于1时,需要为索引设置 index.max_ngram_diff 属性。


GET _analyze
{
  "tokenizer": "standard",
  "filter": [
    {
      "type": "ngram",
      "min_gram":2,
      "max_gram":3
    }
  ],
  "text": [  "cat"  ]
}
#Response
[ ca, cat, at ]



《Elastic Stack 实战手册》——三、产品能力——3.4.入门篇——3.4.2.Elasticsearch基础应用——3.4.2.17.Text analysis, settings 及 mappings——3.4.2.17.4.Analyzers / Custom analyzers(8) https://developer.aliyun.com/article/1229767

相关实践学习
以电商场景为例搭建AI语义搜索应用
本实验旨在通过阿里云Elasticsearch结合阿里云搜索开发工作台AI模型服务,构建一个高效、精准的语义搜索系统,模拟电商场景,深入理解AI搜索技术原理并掌握其实现过程。
ElasticSearch 最新快速入门教程
本课程由千锋教育提供。全文搜索的需求非常大。而开源的解决办法Elasricsearch(Elastic)就是一个非常好的工具。目前是全文搜索引擎的首选。本系列教程由浅入深讲解了在CentOS7系统下如何搭建ElasticSearch,如何使用Kibana实现各种方式的搜索并详细分析了搜索的原理,最后讲解了在Java应用中如何集成ElasticSearch并实现搜索。  
相关文章
|
存储 网络协议 Linux
【技术分享】syslog
4月更文挑战第5天
621 1
|
5月前
|
缓存 监控 Java
90%电商踩过的API坑:这10个教训让你年省百万
本文总结电商API开发中的10大关键教训,涵盖数据安全、版本兼容与成本控制,结合真实案例与技术方案,助力企业规避风险、提升效率,实现稳定高效的数字化转型。
|
9月前
|
算法 数据建模 应用服务中间件
阿里云2025智惠采购季,WoSign SSL证书优惠叠加使用攻略
阿里云2025智惠采购季,WoSign SSL证书折上折满减优惠!活动月期间(2025年03月01日至03月31日)活动折扣叠加满减优惠券,具体如何操作才能获取组合优惠价格呢?快来get优惠券组合使用攻略吧!
725 4
|
10月前
|
存储 缓存 网络协议
为什么有了MAC还需要IP?
通过上述分析和解释,我们可以清晰地看到为什么在计算机网络中既需要MAC地址也需要IP地址。它们各自的功能和作用相辅相成,共同确保了网络通信的有效性和灵活性。
334 9
|
9月前
|
NoSQL 关系型数据库 MongoDB
微服务——MongoDB常用命令——集合操作
本节主要介绍MongoDB中的集合操作,包括显式与隐式创建集合的方法。显式创建使用`db.createCollection(name)`,需遵循命名规范(如不能以"system."开头或包含`\0`字符)。隐式创建则通过直接向不存在的集合插入文档实现,更为常用。此外,还介绍了集合删除方法`db.collection.drop()`及其返回值规则,帮助用户管理数据库中的集合资源。
346 0
|
11月前
|
自然语言处理 数据处理 数据库
《高斯数据库联姻知识图谱,解锁语义理解与关联分析新境界》
高斯数据库结合知识图谱技术,实现数据的语义理解和关联分析。通过实体识别、关系抽取和语义建模,精准解析文本中的实体及其关系,如“华为”与“苹果”的竞争关系。知识图谱助力多源数据融合,挖掘复杂关联,支持实时决策。应用案例包括医疗领域的疾病诊断和药物研发,提升数据处理效率和准确性。这一创新解决方案为企业数字化转型提供强大支持。
307 17
|
安全 Android开发 数据安全/隐私保护
深入探索Android与iOS系统安全性的对比分析
在当今数字化时代,移动操作系统的安全已成为用户和开发者共同关注的重点。本文旨在通过比较Android与iOS两大主流操作系统在安全性方面的差异,揭示两者在设计理念、权限管理、应用审核机制等方面的不同之处。我们将探讨这些差异如何影响用户的安全体验以及可能带来的风险。
769 21
|
云安全 存储 安全
守护数据安全: 零信任视角下的勒索病毒防范之道
京鼎科技遭黑客勒索100万美元,全球勒索软件攻击增长,2023年涨幅37.75%。企业应采取零信任策略防止攻击:包括软件定义边界隐藏资产、颗粒度授权认证、持续信任评估和微隔离。德迅云安全提出零信任安全体系解决方案,通过网络隐身、IAM、流量控制和应用隔离保护企业免受勒索软件威胁。
|
编解码 数据可视化 搜索推荐
2. figure 常见属性
2. figure 常见属性
416 1
|
运维 搜索推荐 Linux
计算机基础,以及实施运维工程师介绍
计算机基础,以及实施运维工程师介绍
497 0

热门文章

最新文章