0

我正在索引的类如下所示:

Class ResData
{
    public string FullName {get;set;}
}

我想以类似的方式搜索 FullName 字段string.contains,而不是使用令牌比较。我知道可以通过用 标记字段来完成[ElasticProperty(Index = FieldIndexOption.not_analyzed)],但这似乎不起作用。当我使用它进行测试时,client.Analyze我得到一个标记列表,并且搜索domo kun不匹配domo kuny但匹配kun domo

有什么帮助吗?

4

1 回答 1

1

通过标记字段 not_analyzed,elasticsearch 将按原样获取字段。这通常适用于您想要排序或进行分面的字段,但不适用于全文搜索。

我会离开标准分析器,然后尝试match_phrase_prefix查询:

http://www.elasticsearch.org/guide/reference/query-dsl/match-query/

于 2013-07-25T08:26:43.400 回答