paoding庖丁分詞使用小例子(學習筆記)

來源:互聯網
上載者:User

推薦使用為知筆記(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
大
大
大洋
鬱悶
沒辦
辦法
最後
想到
直接
找開
開源
分詞
軟體
找到
庖丁
於是
大
大呼
爽



必須成功的。

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.