利用java简单的中文分词功能模块

第一步:在复制下列代码到您的编程软件项目里之前,还需要下载两个jar包
IKAnalyzer2012.jar
lucene-core-3.6.0.jar

百度网盘下载地址
https://pan.baidu.com/s/1oGec_mqU7PdqkKdA-H4k0Q
提取码: 9egm
第二布:将两个jar包复制到任意一个文件中(或者你可以新建一个lib文件夹然后把两个文件复制进去)
第三步:右击项目出现如下页面,再点击Build Path下的Configure Build path…
di在这里插入图片描述
第四步:第三步之后页面会跳出如下窗口,点击Add jaRs…:
在这里插入图片描述
第五步:然后找到你复制进项目中的两个jar包,按Ctrl键可以同时选中两个一起添加
在这里插入图片描述
第六步:添加后的样子如下所示,文件图标变成小奶瓶,最后点击Apply应用就可以复制代码运行了。
在这里插入图片描述

第七步:复制代码到你的clss文件中运行即可

package com.core.service.impl;(这里改成自己的包名)
import java.io.IOException;
import java.io.StringReader;
import org.apache.lucene.analysis.Analyzer;
import org.apache.lucene.analysis.TokenStream;
import 
org.apache.lucene.analysis.tokenattributes.CharTermAttribute;
import org.wltea.analyzer.lucene.IKAnalyzer;
public class ChineseWordSeg {
	public static void main(String[] args) throws IOException {
		// 提前准备需要分词的语言
		String t = "你好,我现在还刚刚接触数据结构,所以还不是太了解!";
		// 创建一个分词对象
		Analyzer a = new IKAnalyzer(true);
		StringReader r = new StringReader(t);
		// 对读入的语言开始进行分词操作
		TokenStream to = a.tokenStream("", r);
		// 获得CharTermAttribute类
		CharTermAttribute te = to.getAttribute(CharTermAttribute.class);
		// 依次遍历分词数据,注意要转换成字符串类型
		while (to.incrementToken()) {
			System.out.print(te.toString() + ",");
		}
		r.close();
		System.out.println();
	}
}

原文链接:https://www.cnblogs.com/zhenyunboy/articles/13841075.html

import WordSegment.*; import java.awt.event.ActionEvent; import java.awt.event.ActionListener; import java.awt.*; import java.io.File; import java.util.Vector; import javax.swing.*; /** * */ /** * @author Truman * */ public class WordSegDemoFrame extends JFrame implements ActionListener { final static int ALGO_FMM = 1; final static int ALGO_BMM = 2; private JMenuBar menuBar = new JMenuBar(); private JMenuItem openDicItem, closeItem; private JRadioButtonMenuItem fmmItem, bmmItem; private JMenuItem openTrainFileItem, saveDicItem, aboutItem; private JButton btSeg; private JTextField tfInput; private JTextArea taOutput; private JPanel panel; JLabel infoDic, infoAlgo; private WordSegment seger; private DicTrainer trainer = new DicTrainer(); private void initFrame() { setTitle("Mini分词器"); setDefaultCloseOperation(EXIT_ON_CLOSE); setJMenuBar(menuBar); JMenu fileMenu = new JMenu("文件"); JMenu algorithmMenu = new JMenu("分词算法"); JMenu trainMenu = new JMenu("训练语料"); JMenu helpMenu = new JMenu("帮助"); openDicItem = fileMenu.add("载入词典"); fileMenu.addSeparator(); closeItem = fileMenu.add("退出"); algorithmMenu.add(fmmItem = new JRadioButtonMenuItem("正向最大匹配", true)); algorithmMenu.add(bmmItem = new JRadioButtonMenuItem("逆向最大匹配", false)); ButtonGroup algorithms = new ButtonGroup(); algorithms.add(fmmItem); algorithms.add(bmmItem); openTrainFileItem = trainMenu.add("载入并训练语料"); saveDicItem = trainMenu.add("保存词典"); aboutItem = helpMenu.add("关于Word Segment Demo"); menuBar.add(fileMenu); menuBar.add(algorithmMenu); menuBar.add(trainMenu); menuBar.add(helpMenu); openDicItem.addActionListener(this); closeItem.addActionListener(this); openTrainFileItem.addActionListener(this); saveDicItem.addActionListener(this); aboutItem.addActionListener(this); fmmItem.addActionListener(this); bmmItem.addActionListener(this); JPanel topPanel = new JPanel(); topPanel.setLayout(new FlowLayout());
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值