Поиск слов, таких как "c#", используя поиск приложений - PullRequest
0 голосов
/ 19 марта 2020

Мы используем Elasticsearch в сочетании с поиском приложений, чтобы расширить возможности поиска на нашем сайте. Мы столкнулись с проблемой, когда заметили, что мы не можем искать такие ключевые слова, как "C#", "C ++" и тому подобное. У кого-нибудь есть совет, как мы можем решить эту проблему?

1 Ответ

0 голосов
/ 19 марта 2020

Здравствуйте, безусловно, приложение для поиска использует по умолчанию стандартный токенизатор, который создает только токены "C" для "C#" и "C ++"

POST _analyze
{
  "text": "C++",
  "tokenizer": "standard"
}

   =>

{
  "tokens" : [
    {
      "token" : "C",
      "start_offset" : 0,
      "end_offset" : 1,
      "type" : "<ALPHANUM>",
      "position" : 0
    }
  ]
}

. Вы можете попробовать использовать это решение. в этом блоге https://medium.com/@joecwu / elasti c -app-search-360f0eba04bf (Хакинг: настраиваем собственные части настроек индекса, но обязательно прочитайте все посты, так как они объясняют поведение поиска приложения ), чтобы переопределить сопоставление поиска приложения по умолчанию. Но его немного взволнован для производства.

...