繁体   English   中英

如何在ElasticSearch中忽略撇号

[英]How to ignore apostrophes in ElasticSearch

如何在文档和查询中忽略撇号?

例如

文献:

{
  name: "Ch`iroki the Big Dud"
}

查询:

name match "Ch`irki"

虽然仍然在结果中使用原始文本并使用其他语言分析器。

我尝试添加replace_pattern char_filter但它没有用。

编辑

这是索引设置:

{
    "settings": {
        "analysis": {
            "char_filter": {
                "replace_apostrophe": {
                    "type": "pattern_replace",
                    "pattern": "'",
                    "replacement": ""
                }
            }
        }
    }
}

这是_analyze请求:

{
    "char_filters": ["replace_apostrophe"],
    "text": "a'b'c"
}

这是_analyze响应:

{
    "char_filters": ["replace_apostrophe"],
    "text": "a'b'c"
}

我哪里错了?

char_filter应该可以使用,请参阅https://www.elastic.co/guide/en/elasticsearch/reference/current/analysis-mapping-charfilter.html

您是否尝试分析API以检查输入字符串是如何标记化的?

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM