2011-04-12 102 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來區分你的幾個特殊字符。