go-wordsfilter - 高性能的 Go 敏感词过滤器
MIT
跨平台
Google Go
软件简介
go-wordsfilter 是一个高性能的 Go 敏感词过滤器,通过预先读取敏感词源并构建树状结构数据的方式来高效地检测和替换敏感词。采用 MIT
开源协议。
下载安装
go get github.com/syyongx/go-wordsfilter
快速开始
import (
"github.com/syyongx/go-wordsfilter"
)
func main() {
texts := []string{
"Miyamoto Musashi",
"妲己",
"アンジェラ",
"ความรุ่งโรจน์",
}
wf := wordsfilter.New()
// Generate
root := wf.Generate(texts)
// Generate with file
// root := wf.GenerateWithFile(path)
// Contains
c1 := wf.Contains("アン", root)
// c1: false
c2 := wf.Contains("アンジェラ", root)
// c2: true
// Remove
wf.Remove("アンジェラ", root)
c3 := wf.Contains("アンジェラ", root)
// c3: false
// Replace
r1 := wf.Replace("Game ความรุ่งโรจน์ i like 妲己 heroMiyamotoMusashi", root)
// r1: Game*************ilike**hero***************
}
Apis
New() *WordsFilter
Generate(texts []string) map[string]*Node
GenerateWithFile(path string) (map[string]*Node, error)
Add(text string, root map[string]*Node)
Replace(text string, root map[string]*Node) string
Contains(text string, root map[string]*Node) bool
Remove(text string, root map[string]*Node)