欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

IKAnalyzer IK分词器

程序员文章站 2024-02-21 22:33:10
...

适用于Lucene5.3.1的IKAnalyzer

测试代码

	 /**
	 *     IKAnalyzer 分词器测试
	 */
	@Test
	public void testAnalyzer() throws Exception{
		//创建一个分析器对象
		Analyzer analyzer = new IKAnalyzer();
		String text = "高富帅!lucene is a haha with then a是一个全文检索的高大上的工具包。";
		System.out.println("当前使用的分词器" + analyzer.getClass().getSimpleName());
		//获得tokenStream对象
		//第一个参数:域名,可以随便给一个
		//第二个参数:要分析的文本内容
		TokenStream tokenStream = analyzer.tokenStream("content", text);
		//添加一个引用,可以获得每个关键词
		CharTermAttribute charTermAttribute = tokenStream.addAttribute(CharTermAttribute.class);
		//将指针调整到列表的头部
		tokenStream.reset();
		//遍历关键词列表,通过incrementToken方法判断列表是否结束
		while (tokenStream.incrementToken()) {
			//取关键词
			System.out.println(charTermAttribute);
		}
		//关闭流
		tokenStream.close();
		analyzer.close();
	}

分词结果

当前使用的分词器IKAnalyzer
加载扩展词典:mine.dic
加载扩展停止词典:stopword.dic
高富帅
lucene
haha
全文
检索
高大上
高大
上
工具包
工具
包

可以自定义自己的字词典以及停用词词典。