Я пытаюсь, чтобы мои поиски игнорировали акценты слова
. Для этого я решил использовать языковой анализатор: es.microsoft
Я тестироваланализатор со словом "Lámpara" в API анализатора, и я получил следующие результаты:
{
"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 Iполучить следующие результаты:
{
"@search.score": 0.30685282,
"Id": "1",
"Nombre": "Lámpara"
}
По какой причине документ принимается только с Nombre = "Lámpara", а не Nombre ="Лампара" (без акцента). У меня сложилось впечатление, что поле Имя не было отправлено на лексический анализ
Определение моего индекса выглядит следующим образом
{
"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": []
}
Буду признателен за любую помощь и извинения за мой плохой английский