Elasticsearch 文本分析与搜索基础全解析
1. 自定义分词器创建索引
可以像之前用自定义组件为字符过滤器类型创建索引那样,使用包含标准分词器的自定义分析器来创建索引。通过提供 max_token_length 大小扩展分词器(如之前代码清单 7.42 中设置为 2)。创建索引后,可使用 _analyze API 测试字段,示例代码如下:
POST index_with_custom_standard_tokenizer/_analyze
{
"text": "Bond",
"analyzer": "custom_token_length_analyzer"
}
此代码会输出两个分词:“Bo” 和 “nd”,符合分词大小为 2 个字符的要求。
2. N - gram 和 edge_ngram 分词器
在学习 n - gram 分词器之前,先回顾 n - grams、edge_ngrams 和 shingles 的概念。
- n - grams :是从给定单词中按给定大小提取的单词序列。例如,对于单词 “coffee”,双字母 n - grams(通常称为 bi - grams)是 “co”、“of”、“ff”、“fe” 和 “ee”;三字母 tri - grams 是 “cof”、“off”、“ffe” 和 “fee”。n - grams 通过滑动字母窗口生成。
- edge_ngrams :生成的单词以原单词的首字母为锚定。以 “c
超级会员免费看
订阅专栏 解锁全文

被折叠的 条评论
为什么被折叠?



