TreeTaggerのインストールは、この辺りで(直に叩く場合perlが必要みたい)
http://funoisan.blog.fc2.com/blog-entry-4.html
僕はこんな感じで導入しました。(eclipse使ってます)
http://d.hatena.ne.jp/ZAORIKU/
この2つのサンプルをくっつけたら動きましたという内容です。
http://code.google.com/p/tt4j/
http://code.google.com/p/tt4j/wiki/Usage
軽いメモなのでリンク先を参照してください。
treetaggerフォルダはcドライブ直下
パラメータファイルも以下の位置に必要
/treetagger/lib/english.par
サンプル文字列は、メインの頭の方のここでいれてます。
String str="I've been to America. I bought leaves";
package org.annolab.tt4j;
import static java.util.Arrays.asList;
import java.text.BreakIterator;
import java.util.ArrayList;
import java.util.List;
public class Example {
public static void main(String[] args) throws Exception {
// Point TT4J to the TreeTagger installation directory. The executable is expected
// in the "bin" subdirectory - in this example at "/opt/treetagger/bin/tree-tagger"
//System.setProperty("treetagger.home", "/opt/treetagger");
System.setProperty("treetagger.home", "/treetagger");// ここに本体が必要 \treetagger\bin\tree-tagger.exe これのことのようです。
TreeTaggerWrapper tt = new TreeTaggerWrapper<String>();
String str="I've been to America. I bought leaves";//サンプル
List<String> sampleStr = tokenize(str);
try {
//tt.setModel("/opt/treetagger/models/english.par:iso8859-1");
tt.setModel("/treetagger/lib/english.par:iso8859-1");// ここにpar パラメータファイルなるものが必要
tt.setHandler(new TokenHandler<String>() {
public void token(String token, String pos, String lemma) {
System.out.println(token + "\t" + pos + "\t" + lemma);
}
});
//tt.process(asList(new String[] { "This", "is", "a", "test", ".", "I","bought","the","car",".","I've","bought","a","car","."}));
tt.process(sampleStr);
}
finally {
tt.destroy();
}
}
public static
List<String> tokenize(
final String aString)
{
List<String> tokens = new ArrayList<String>();
BreakIterator bi = BreakIterator.getWordInstance();
bi.setText(aString);
int begin = bi.first();
int end;
for (end = bi.next(); end != BreakIterator.DONE; end = bi.next()) {
String t = aString.substring(begin, end);
if (t.trim().length() > 0) {
tokens.add(aString.substring(begin, end));
}
begin = end;
}
if (end != -1) {
tokens.add(aString.substring(end));
}
return tokens;
}
}