postgres中的中文分詞zhparser

2021-09-23 20:04:34 字數 1274 閱讀 4255

基本查了下網路,postgres的中文分詞大概有兩種方法:

其中的bamboo安裝和使用都比較複雜,所以我選擇的是zhparser

scws是簡易中文分詞系統的縮寫,它的原理其實很簡單,基於詞典,將文字中的內容按照詞典進行分詞,提取關鍵字等。github上的位址在這裡。它是xunsearch的核心分詞系統。

而zhparser是基於scws來做的postgres的擴充套件。

基本按照zhparser 中的步驟就可以了。

在postgres.conf中你可以設定下面的引數:

zhparser.punctuation_ignore = f

zhparser.seg_with_duality = f

zhparser.dict_in_memory = f

zhparser.multi_short = f

zhparser.multi_duality = f

zhparser.multi_zmain = f

zhparser.multi_zall = f

還可以設定自有詞典

zhparser.extra_dicts = 'dict_extra.txt,mydict.xdb'
雖然專案文件說用txt也是可以的,但是我自己嘗試過的時候,自有詞典只能使用xdb

按照文件說明

create extension zhparser;

create

text

search configuration testzhcfg (parser = zhparser);

alter

text

search configuration testzhcfg add

forn,v,a,i,e,l

with ******;

在這三步之後,你就建立了乙個testzhcfg的解析器

to_tsvector, to_tsquery 其實都是有第乙個引數的,第乙個引數表示解析器是什麼。比如你想要進行文字搜尋,可以使用下面的語句:

select

idfrom question_view

where to_tsvector('testzhcfg', content) @@ to_tsquery('testzhcfg', '寶馬') and

status = 1

order

byid

desc

這個語句是基於檢視question_view的

postgres中的中文分詞zhparser

基本查了下網路,postgres的中文分詞大概有兩種方法 其中的bamboo安裝和使用都比較複雜,所以我選擇的是zhparser scws是簡易中文分詞系統的縮寫,它的原理其實很簡單,基於詞典,將文字中的內容按照詞典進行分詞,提取關鍵字等。github上的位址在這裡。它是xunsearch的核心分詞...

postgres中的中文分詞zhparser

基本查了下網路,postgres的中文分詞大概有兩種方法 其中的bamboo安裝和使用都比較複雜,所以我選擇的是zhparser scws是簡易中文分詞系統的縮寫,它的原理其實很簡單,基於詞典,將文字中的內容按照詞典進行分詞,提取關鍵字等。github上的位址在這裡。它是xunsearch的核心分詞...

中文分詞的方法

中文分詞主要有兩個類別 本別是基於字詞典分詞演算法和基於統計的機器學習演算法,下面依次介紹這兩種方法。也稱字串匹配分詞演算法。該演算法是按照一定的策略將待匹配的字串和乙個已建立好的 充分大的 詞典中的詞進行匹配,若找到某個詞條,則說明匹配成功,識別了該詞。常見的基於詞典的分詞演算法分為以下幾種 正向...