FT.SPELLCHECK
对查询执行拼写更正,返回拼写错误术语的建议
语法
FT.SPELLCHECK index query [DISTANCE distance] [TERMS dictionary [terms [terms ...]]] [DIALECT dialect]
引入版本:1.4.0
复杂度摘要:O(1)
对查询执行拼写更正,返回拼写错误术语的建议
必需参数
index
是带有索引项的索引。
query
是搜索查询。
有关更多详细信息,请参阅 拼写检查。
可选参数
TERMS
指定自定义字典的包含(INCLUDE)或排除(EXCLUDE)。要了解有关管理自定义词典的更多信息,请参阅 FT.DICTADD、FT.DICTDEL 和 FT.DICTDUMP。
可以指定多个包含和排除TERMS。
DISTANCE
是拼写建议的最大编辑距离(默认值:1,最大:4)。
DIALECT {dialect_version}
选择执行查询的方言版本。如果未指定,查询将在模块初始加载期间或通过 FT.CONFIG SET 命令设置的默认方言版本下执行。
返回
FT.SPELLCHECK 返回一个数组回复,其中每个元素代表查询中拼写错误的术语。拼写错误的术语按其在查询中出现的顺序排序。每个拼写错误的术语又是一个 3 元素数组,由常量字符串 TERM、术语本身和拼写更正建议数组组成。拼写更正数组中的每个元素都由建议的分数和建议本身组成。对于每个拼写错误的术语,建议数组按分数降序排列。分数是通过将建议术语存在的文档数除以索引中的文档总数来计算的。可以通过将分数除以最高分数来标准化结果。
示例
Perform spelling correction on a query
127.0.0.1:6379> FT.SPELLCHECK idx 举行距离 2 1) 1) "学期" 2) "举行" 3) 1) 1) "0.66666666666666663" 2) "你好" 2) 1) "0.33333333333333331" 2)“帮助”
Redis Software 与 Redis Cloud 兼容性
| Redis 软件 |
Redis软件 Flex |
Redis Cloud 灵活且每年 |
Redis Cloud 免费和固定 |
说明 |
|---|---|---|---|---|
| ✅ 支持 | ❌ 不支持 | ✅ 支持 | ✅ 支持 |
返回值
RESP2
以下之一: * 每个术语的拼写检查结果的 数组。 * 简单错误回复 在这些情况下:没有这样的索引。
RESP3
以下之一: * 地图 和 results 键包含每个术语的拼写检查结果。 * 简单错误回复 在这些情况下:没有这样的索引。
参见
FT.CONFIG SET | FT.DICTADD | FT.DICTDEL | FT.DICTDUMP
相关主题
资料来源:Redis 官方 FT.SPELLCHECK 文档;中文内容参考 Redis 文档许可。