package engine

import (
    "bufio"
    "log"
    "os"
)

type StopTokens struct {
    stopTokens map[string]bool
}

// 从stopTokenFile中读入停用词,一个词一行
// 文档索引建立时会跳过这些停用词
func (st *StopTokens) Init(stopTokenFile string) {
    st.stopTokens = make(map[string]bool)
    if stopTokenFile == "" {
        return
    }

    file, err := os.Open(stopTokenFile)
    if err != nil {
        log.Fatal(err)
    }
    defer file.Close()

    scanner := bufio.NewScanner(file)
    for scanner.Scan() {
        text := scanner.Text()
        if text != "" {
            st.stopTokens[text] = true
        }
    }

}

func (st *StopTokens) IsStopToken(token string) bool {
    _, found := st.stopTokens[token]
    return found
}

最新文章

  1. jquery点击切换背景色
  2. Makefile 一点一滴(一)—— 从最简单的makefile模板写起
  3. spring mvc拦截器和<mvc:annotation-driven />的详解
  4. 创建一个maven web project
  5. 转:mysql中int、bigint、smallint 和 tinyint的区别与长度的含义
  6. arduino上使用sprintf()函数输出float值出错
  7. Qt Creator编译问题
  8. gridControl 部分属性
  9. 单例--iOS
  10. C语言 > 数组和指针
  11. Keras实现LSTM
  12. Zypper常用命令
  13. vue---由nextTick原理引出的js执行机制
  14. DirectX11 With Windows SDK--15 几何着色器初探
  15. SparkSQL – 从0到1认识Catalyst(转载)
  16. SpringBoot 推荐博客
  17. bug制造者又上线了
  18. 8-安装Kafka
  19. [LOJ#6044]. 「雅礼集训 2017 Day8」共[二分图、prufer序列]
  20. 腾讯优图&港科大提出一种基于深度学习的非光流 HDR 成像方法

热门文章

  1. day07_Tomcat服务器与http学习笔记
  2. OVS+DPDK Datapath 包分类技术
  3. C# PDF Page操作——设置页面切换按钮
  4. WebService学习--(一)webservice相关概念
  5. AngularJS学习笔记之directive——scope选项与绑定策略
  6. oracel 拆分字符串
  7. Linux下编译安装BOOST
  8. MinGW安装与使用简介
  9. classes目录中没有class文件的一个原因
  10. 在Windows上安装FFmpeg程序的方法(you-get下载视频必备程序)