PostgreSQL tsvector配置:如何允许特殊字符?
发布时间:2020-12-13 16:25:32 所属栏目:百科 来源:网络整理
导读:我已经在PostgreSQL中设置了一个新的文本搜索配置.此配置使用一个空的停止字文件DictFile和AffFile. 一个简单的测试… SELECT * FROM ts_debug('public.myconfig','C++ and C# and PHP'); …工作(几乎)罚款,除了’C’和’C#’的词汇都是’C’的事实.基本上,
我已经在PostgreSQL中设置了一个新的文本搜索配置.此配置使用一个空的停止字文件DictFile和AffFile.
一个简单的测试… SELECT * FROM ts_debug('public.myconfig','C++ and C# and PHP'); …工作(几乎)罚款,除了’C’和’C#’的词汇都是’C’的事实.基本上,我想做的就是确保’C’的词汇是’C’,’C#’的词典是’C”,因此用户可以查询’C’.
问题是双重的.
>第一个问题是索引.默认配置使用词干来索引数据,因此您可以获得’C’和’C#’的词法’C’.您可以使用“简单”配置对数据进行索引,但是在索引中最终会出现不需要的字词.我所做的是将’C’转换为’Cplusplus’并进行索引.由于“Cplusplus”没有lexeme,因此它将被复制.您可以通过使索引数据中的“CSharp”对’C#’执行相同的操作. 我在DB上创建了一个函数,该函数带有一个字符串,并转换了所有特殊术语的发生. 我没有使用TSearch一段时间,所以我不知道TSearch是否允许您设置和例外列表与允许使用的禁用词一样. (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
相关内容