【发布时间】:2019-11-16 08:35:59
【问题描述】:
我正在尝试让我的搜索忽略单词重音
为此,我决定使用语言分析器:es.microsoft
我在分析器 API 中使用“Lámpara”一词测试分析器,得到以下结果:
{
"token": "lampara",
"startOffset": 0,
"endOffset": 7,
"position": 0
},
{
"token": "lámpara",
"startOffset": 0,
"endOffset": 7,
"position": 0
}
我的测试索引中只有 2 个文档:
{
"@search.score": 1,
"Id": "2",
"Nombre": "Lampara"
},
{
"@search.score": 1,
"Id": "1",
"Nombre": "Lámpara"
}
在索引中搜索单词时 search=Lámpara 我得到以下结果:
{
"@search.score": 0.30685282,
"Id": "1",
"Nombre": "Lámpara"
}
出于什么原因,仅收到 Nombre = "Lámpara" 而不是 Nombre = "Lampara"(无重音)的文档。我的印象是 Name 字段没有发送到词法分析
我的索引的定义如下
{
"name": "test",
"fields": [
{
"name": "Id",
"type": "Edm.String",
"facetable": false,
"filterable": true,
"key": true,
"retrievable": true,
"searchable": false,
"sortable": false,
"analyzer": null,
"indexAnalyzer": null,
"searchAnalyzer": null,
"synonymMaps": [],
"fields": []
},
{
"name": "Nombre",
"type": "Edm.String",
"facetable": false,
"filterable": false,
"key": false,
"retrievable": true,
"searchable": true,
"sortable": false,
"analyzer": "es.microsoft",
"indexAnalyzer": null,
"searchAnalyzer": null,
"synonymMaps": [],
"fields": []
}
],
"suggesters": [],
"scoringProfiles": [],
"defaultScoringProfile": null,
"corsOptions": null,
"analyzers": [],
"charFilters": [],
"tokenFilters": [],
"tokenizers": []
}
我会很感激任何帮助,并为我的英语不好表示歉意
【问题讨论】:
标签: azure azure-cognitive-search