2011-04-12 61 views
0

这里是问题。当执行此:Postgresql全文搜索几个特定字符的文字

select to_tsvector('simple', 'a.') 

我神只有一个结果: 'A' 因为 “”是一个“空格符号”

所以,我的问题是什么是从空间符号列表中删除几个字符, 这个(简单)字典或另一个(新创建)的最佳方式。 我无法找到系统数据库或postgresql存储这些符号的文件。

+0

说明问题可能会有所帮助。 – 2011-04-12 09:35:36

+0

第一个失败我试图回复已发布的问题。现在我创建了一个新的。 – Armin 2011-04-12 09:45:22

回答

1

首先,您需要创建自定义的文本搜索配置

CREATE TEXT SEARCH CONFIGURATION your_fts (
    PARSER = pg_catalog."default"); 

,然后添加一个映射空白令牌

ALTER TEXT SEARCH CONFIGURATION name 
    ALTER MAPPING FOR blank WITH simple; 

这样,你所有的空格和特殊字符会去tsvectors。这可能不是你想要的。您将需要使用custom dictionary或甚至custom parser来区分你的几个特殊字符。