redis 模糊搜索中文

8zzbczxx  于 2023-10-15  发布在  Redis
关注(0)|答案(1)|浏览(155)

enter image description here
我想在redissearch中执行模糊搜索。
名称是一个文本文件。当我试图

FT.SEARCH panda_beta.mp2c.job_store.json:index '@name_fts:*店员* @pk:{16509}' RETURN 2 pk company_id LIMIT 0 1

但我找不到结果
当我尝试set name='大学大学路创意天地店'时
和搜索

FT.SEARCH panda_beta.mp2c.job_store.json:index '@name_fts:*大员* @pk:{16509}' RETURN 2 pk company_id LIMIT 0 1```

the result is output.Why? How can I resolve it?
xwmevbvl

xwmevbvl1#

对于中文,您必须在创建索引时指定语言。
看看FT.CREATEdocumentation
语言{default_lang}
如果设置,则指示索引中文档的默认语言。默认为英语。
语言_FIELD {lang_attribute}
是设置为文档语言的文档属性。
词干分析器用于索引期间提供的语言。如果发送的语言不受支持,则命令将返回错误。支持的语言包括阿拉伯语、巴斯克语、加泰罗尼亚语、丹麦语、荷兰语、英语、芬兰语、法语、德语、希腊语、匈牙利语、印度尼西亚语、爱尔兰语、意大利语、立陶宛语、尼泊尔语、挪威语、葡萄牙语、罗马尼亚语、俄语、西班牙语、瑞典语、泰米尔语、土耳其语和中文。
当添加中文文档时,为索引器设置LANGUAGE chinese以正确标记术语。如果使用默认语言,则搜索词将基于标点字符和空格提取。中文分词器使用分割算法(通过Friso),分割文本并根据预定义的字典进行检查。有关详细信息,请参见词干。
FT.SEARCHdocumentation
语言{language}
在搜索查询扩展期间为提供的语言使用词干分析器。如果使用中文查询文档,请设置为中文以正确标记查询词。默认为英语。如果发送的语言不受支持,则命令将返回错误。有关语言列表,请参见FT.CREATE。

相关问题