我正在使用



并尝试在标题中搜索特殊字符。

例如,我有两行包含此信息:

id    title
1     GT40
2     #GT40

因此,当我搜索“#GT40”时,pg_search 的结果将是 1 和 2。但我想搜索精确的词,所以结果将只有 2。

谢谢!

最佳答案

我试图写评论,但我的声誉还不够高。但也许您尝试做的事情用 pg_search 是不可能的?

pg_search 基于 PostgreSQL 的全文搜索。控制台中的测试显示“GT40”和“#GT40”被索引到相同的词素(这意味着您的搜索无法区分它们):

"GT40" :

=# SELECT to_tsvector('english', 'GT40');
 to_tsvector
-------------
 'gt40':1
(1 row)

"#GT40" :
=# SELECT to_tsvector('english', '#GT40');
 to_tsvector
-------------
 'gt40':1
(1 row)

以下是一些可能有用的引用信息:

教程:http://shisaa.jp/postset/postgresql-full-text-search-part-1.html

PostgreSQL 全文检索引用:http://www.postgresql.org/docs/9.1/static/textsearch.html

关于ruby-on-rails - 使用 pg_search 搜索特殊字符,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/30741405/

10-13 02:16