Spec-Zone.ru › Redis

FT.SPELLCHECK

FT.SPELLCHECK
Синтаксис
FT.SPELLCHECK index query 
  [DISTANCE distance] 
  [TERMS INCLUDE | EXCLUDE dictionary [terms [terms ...]]] 
  [DIALECT dialect]
Доступно в:
Redis Stack / Поиск 1.4.0
Сложность по времени:
O(1)

Производит проверку правописания запроса, возвращая предложения по неверно написанным терминам.

Примеры

Обязательные аргументы

index

Это индекс с индексированными терминами.

query

Это поисковый запрос.

См. Проверку правописания для получения дополнительной информации.

Необязательные аргументы

TERMS

устанавливает включение (INCLUDE) или исключение (EXCLUDE) пользовательского словаря с именем {dict}. Обратитесь к FT.DICTADD, FT.DICTDEL и FT.DICTDUMP для управления пользовательскими словарями.

DISTANCE

устанавливает максимальное расстояние Левенштейна для предложений по правописанию (по умолчанию: 1, максимум: 4).

DIALECT {dialect_version}

выбирает версию диалекта, в рамках которой будет выполняться запрос. Если не указано, запрос будет выполняться в рамках версии диалекта по умолчанию, установленной во время начальной загрузки модуля или с помощью команды FT.CONFIG SET.

Возврат

FT.SPELLCHECK возвращает массивный ответ, в котором каждый элемент представляет собой неверно написанный термин из запроса. Неверно написанные термины упорядочены по порядку их появления в запросе. Каждый неверно написанный термин, в свою очередь, является массивом из 3 элементов, состоящих из постоянной строки TERM, самого термина и массива предложений по исправлению правописания. Каждый элемент в массиве предложений по исправлению правописания состоит из оценки предложения и самого предложения. Массив предложений, по каждому неверно написанному термину, упорядочен в порядке убывания оценки. Оценка рассчитывается путём деления количества документов, в которых существует предложенный термин, на общее количество документов в индексе. Результаты могут быть нормализованы путём деления оценок на самую высокую оценку.

Примеры

Произвести проверку правописания запроса
127.0.0.1:6379> FT.SPELLCHECK idx held DISTANCE 2
1) 1) "TERM"
   2) "held"
   3) 1) 1) "0.66666666666666663"
         2) "hello"
      2) 1) "0.33333333333333331"
         2) "help"

См. также

FT.CONFIG SET | FT.DICTADD | FT.DICTDEL | FT.DICTDUMP

Связанные темы

  • Проверка правописания
  • RediSearch

© 2006–2022 Salvatore Sanfilippo
Licensed under the Creative Commons Attribution-ShareAlike License 4.0.
https://redis.io/commands/ft.spellcheck/

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API