您的位置:首页 > 其它

paoding庖丁分词使用小例子(学习笔记)

2012-03-06 13:20 381 查看
推荐使用为知笔记(Wiz),它是电脑、手机、平板都能用的云笔记软件,使用我的邀请注册可获VIP体验:http://www.wiz.cn/i/02c6808b

做SRT遇到要分词,以前做了一个分词系统,但那个是老师提供的词库,真要自己来做分词,没词库怎么行?

到处找词库,找不到好用的,后来还在台湾某个学术机构上看到一个词库,但要台币一万大洋,郁闷~~

没办法,最后想到直接找开源的分词软件,找到庖丁,于是大呼“爽”!

下面直接给一个小例子,功能是将某个目录下的某个txt文件里面的内容读取出来并分词,把分词结果显示出来:

先配置好paoding的运行环境,无非就是把庖丁用的那些jar文件导入项目。

然后需要导入包:

import java.io.BufferedReader;
import java.io.BufferedWriter;
import java.io.File;
import java.io.FileInputStream;
import java.io.FileNotFoundException;
import java.io.FileWriter;
import java.io.IOException;
import java.io.InputStreamReader;

import net.paoding.analysis.analyzer.PaodingAnalyzer;

import org.apache.lucene.analysis.Analyzer;
import org.apache.lucene.analysis.Token;
import org.apache.lucene.analysis.TokenStream;
import org.eclipse.swt.SWT;
import org.eclipse.swt.events.SelectionAdapter;
import org.eclipse.swt.events.SelectionEvent;
import org.eclipse.swt.widgets.Button;
import org.eclipse.swt.widgets.Display;
import org.eclipse.swt.widgets.Label;
import org.eclipse.swt.widgets.Menu;
import org.eclipse.swt.widgets.MenuItem;
import org.eclipse.swt.widgets.Shell;
import org.eclipse.swt.widgets.Text;
这里是直接从我的项目里copy出来的,有些用不到。

下面自己写个test类,把下面的代码贴进去:

public static void main(String[] args) throws IOException {

		String content = null;

		// 将庖丁封装成符合Lucene要求的Analyzer规范
		Analyzer analyzer = new PaodingAnalyzer();

		FileInputStream in = null;
		in = new FileInputStream(new File("d://text.txt"));

		InputStreamReader inReader = new InputStreamReader(in);
		BufferedReader br = new BufferedReader(inReader);
		TokenStream ts = analyzer.tokenStream(content, br);

		Token t;
		t = ts.next();
		while (t != null) {
			content += t.termText() + " ";
			System.out.println(t.termText());
			t = ts.next();
		}
	}


在D盘根目录下建立一个text.txt文件,把本文前两段的内容贴进去。

测试一下,控制台输出:
三月 06, 2012 1:22:50 下午 net.paoding.analysis.knife.PaodingMaker getProperties

信息: config paoding analysis from: F:\eclipse_work\SRTDemo\file:\F:\eclipse_work\SRTDemo\lib\paoding-analysis.jar!\paoding-analysis.properties;F:\eclipse_work\SRTDemo\file:\F:\eclipse_work\SRTDemo\lib\paoding-analysis.jar!\paoding-analysis-default.properties;F:\eclipse_work\SRTDemo\file:\F:\eclipse_work\SRTDemo\lib\paoding-analysis.jar!\paoding-analyzer.properties;F:\eclipse_work\SRTDemo\bin\paoding-dic-home.properties;D:\dic\paoding-dic-names.properties;F:\eclipse_work\SRTDemo\file:\F:\eclipse_work\SRTDemo\lib\paoding-analysis.jar!\paoding-knives.properties;F:\eclipse_work\SRTDemo\file:\F:\eclipse_work\SRTDemo\lib\paoding-analysis.jar!\paoding-knives-user.properties

三月 06, 2012 1:22:50 下午 net.paoding.analysis.knife.PaodingMaker createPaodingWithKnives

信息: add knike: net.paoding.analysis.knife.CJKKnife

三月 06, 2012 1:22:50 下午 net.paoding.analysis.knife.PaodingMaker createPaodingWithKnives

信息: add knike: net.paoding.analysis.knife.LetterKnife

三月 06, 2012 1:22:50 下午 net.paoding.analysis.knife.PaodingMaker createPaodingWithKnives

信息: add knike: net.paoding.analysis.knife.NumberKnife



srt

遇到



分词



以前

做了

一个

分词

系统

那个

老师

提供

词库

真要



分词

没词

词库

怎么



到处

找词

词库

不到

找不到

好用

用的

后来

还在

在台

台湾

某个

学术

机构

看到

一个

一个词

词库

但要

台币

10000





大洋

郁闷

没办

办法

最后

想到

直接

找开

开源

分词

软件

找到

庖丁

于是



大呼



必须成功的!
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: