simplest_example.go 974 B

12345678910111213141516171819202122232425262728293031323334353637
  1. /*
  2. 没有比这个更简单的例子了。
  3. */
  4. package main
  5. import (
  6. "log"
  7. "github.com/huichen/wukong/engine"
  8. "github.com/huichen/wukong/types"
  9. )
  10. var (
  11. // searcher是线程安全的
  12. searcher = engine.Engine{}
  13. )
  14. func main() {
  15. // 初始化
  16. searcher.Init(types.EngineInitOptions{
  17. SegmenterDictionaries: "../data/dictionary.txt"})
  18. defer searcher.Close()
  19. // 将文档加入索引,docId 从1开始
  20. searcher.IndexDocumentS("db:table:1", types.DocumentIndexData{Content: "此次百度收购将成中国互联网最大并购"}, false)
  21. searcher.IndexDocumentS("db:table:2", types.DocumentIndexData{Content: "百度宣布拟全资收购91无线业务"}, false)
  22. searcher.IndexDocumentS("db:table:3", types.DocumentIndexData{Content: "百度是中国最大的搜索引擎"}, false)
  23. // 等待索引刷新完毕
  24. searcher.FlushIndex()
  25. // 搜索输出格式见types.SearchResponse结构体
  26. log.Print(searcher.Search(types.SearchRequest{Text: "百度中国"}))
  27. }