Crates.io | igo-rs |
lib.rs | igo-rs |
version | 0.3.0 |
source | src |
created_at | 2016-11-19 23:04:59.094055 |
updated_at | 2019-07-20 17:20:26.241472 |
description | Pure Rust port of the Igo, a POS(Part-Of-Speech) tagger for Japanese (日本語 形態素解析). |
homepage | https://bitbucket.org/yshryk/igo-rs |
repository | https://bitbucket.org/yshryk/igo-rs |
max_upload_size | |
id | 7312 |
size | 996,642 |
Pure Rust port of the Igo, a POS(Part-Of-Speech) tagger for Japanese.
The original version was written in Java.
WebAssembly ready as of version 0.3 (Online Demo).
Japanese follows the English
% cp -r somewhere/original_java_igo/dic/ipadic data
% cargo build --release
% ./target/release/igo -t "すもももももも🍑もものうち" data/ipadic
すもも 名詞,一般,*,*,*,*,すもも,スモモ,スモモ
も 助詞,係助詞,*,*,*,*,も,モ,モ
もも 名詞,一般,*,*,*,*,もも,モモ,モモ
も 助詞,係助詞,*,*,*,*,も,モ,モ
🍑 記号,一般,*,*,*,*,*
もも 名詞,一般,*,*,*,*,もも,モモ,モモ
の 助詞,連体化,*,*,*,*,の,ノ,ノ
うち 名詞,非自立,副詞可能,*,*,*,うち,ウチ,ウチ
EOS
extern crate igo;
use std::path::PathBuf;
use igo::Tagger;
fn main() {
let dic_dir = PathBuf::from("data/ipadic");
let tagger = Tagger::new(&dic_dir).unwrap();
let text = "すもももももももものうち";
let results = tagger.parse(text);
for ref m in results {
println!("{}\t{}", m.surface, m.feature);
}
println!("EOS");
}
% cargo build --release
% ./target/release/igo_build_dic data/ipadic data/mecab-ipadic-2.7.0-20070801-utf8 UTF-8
### Build word trie
### Build word dictionary
### Build matrix
### Build char-category dictionary
DONE
The MIT License.
Takeru Ohta氏がJavaで書いた日本語形態素解析ライブラリ Igo をRustに移植したものです。
Rust用ライブラリとして、またはコマンドラインプログラムとして使用可能です。 上の Demo と Usage を見てください。
igo::Morpheme
は 処理対象テキストと igo::Tagger
への参照を保持しています。 surface
は処理対象テキストのスライスであり、
feature
は辞書内テキストのスライスです。
必要に応じて Morpheme#to_owned()
等の処理をしてください。examples/parse.rs
を64-bit Linux環境で valgrind --tool=massif
を使って調べたところ、
最大で102.6MBでした。
igo-rs-ruby -- rubyの拡張ライブラリとして呼び出せるようにするテスト