首页 > 解决方案 > Couchbase 全文搜索特殊字符或重音

问题描述

我需要帮助设置Couchbase 全文搜索

我尝试忽略特殊字符,例如重音符号,以获得更大的灵活性。

我认为解决方案是在“分析器”和“自定义过滤器”的配置中。通过创建这样的“字符过滤器”(每个字母一个),没有效果:

Regular Expression: [àáâãäåæ]
Replacement: a

任何想法?

标签: full-text-searchspecial-characterscouchbase

解决方案


一种可能的解决方案是使用Fuzzy Query.

根据文档

模糊查询匹配指定编辑(或 Levenshtein)距离内的术语:这意味着当术语在指定程度相似时被认为匹配,而不是精确。规定长度的公共前缀也可以指定为匹配要求。

为了您的需要,我将从 1 的模糊性开始并尝试一下:

{
 "term": "hellå",
 "field": "test.field",
 "fuzziness": 1  
}

如果您使用 SDK,您可以在此处找到使用示例。

例如:

TermQuery query = SearchQuery.term("hellå").field("test.field").fuzziness(1);

推荐阅读