mirror of
https://github.com/fumiama/paper-manager.git
synced 2026-06-08 01:24:55 +08:00
30 lines
456 B
Go
30 lines
456 B
Go
package utils
|
|
|
|
import (
|
|
"archive/zip"
|
|
"bytes"
|
|
_ "embed"
|
|
|
|
"github.com/fumiama/jieba"
|
|
)
|
|
|
|
//go:embed dict.zip
|
|
var dictzip []byte
|
|
|
|
// Segmenter jieba 分词器
|
|
var Segmenter = func() *jieba.Segmenter {
|
|
r, err := zip.NewReader(bytes.NewReader(dictzip), int64(len(dictzip)))
|
|
if err != nil {
|
|
panic(err)
|
|
}
|
|
f, err := r.Open("dict.txt")
|
|
if err != nil {
|
|
panic(err)
|
|
}
|
|
seg, err := jieba.LoadDictionary(f)
|
|
if err != nil {
|
|
panic(err)
|
|
}
|
|
return seg
|
|
}()
|