【问题标题】:How do I configure Elasticsearch to match either number or "spelled-out" number?如何配置 Elasticsearch 以匹配数字或“拼写”数字?
【发布时间】:2013-10-11 15:09:12
【问题描述】:

如果我在 Elasticsearch 中有一个文档,其中一个字段包含术语“十”,是否有一个分析器/标记器允许在搜索“10”或“十”时匹配该文档?

【问题讨论】:

    标签: search lucene elasticsearch


    【解决方案1】:

    我不相信,不。我相信this question 的答案仍然代表 ElasticSearch 和 Solr,不幸的是。

    但是,如果您不需要很多匹配的数字(例如,只使用通常拼写出来的数字),那么使用 SynonymFilter 进行设置相当简单,例如:

    "filter" : {
        "synonym" : {
            "type" : "synonym",
            "synonyms_path" : "analysis/synonym.txt"
        }
    }
    

    在“synonyms.txt”中有一个映射,例如:

    zero, aught => 0
    quarter => .25
    half => .5
    one => 1
    two => 2
    three => 3
    four => 4
    five => 5
    six => 6
    seven => 7
    eight => 8
    nine => 9
    ten => 10
    eleven => 11
    twelve, dozen => 12
    twenty => 20
    thirty => 30
    

    等等。

    【讨论】:

    • 我认为这可能是一种可能性,感谢您确认!我会试试这个。太糟糕了,我们所追求的不是内置的。一天……
    猜你喜欢
    • 2017-06-02
    • 2020-07-19
    • 2018-06-05
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多