それマグで!

知識はカップより、マグでゆっくり頂きます。 takuya_1stのブログ

習慣に早くから配慮した者は、 おそらく人生の実りも大きい。

Zend_Searchで日本語を解析していきたい。

screenshot

ここに拡張方法が載っている。

Zend_Search(Lucune)もNamazuなどと同じくIndexerでIndexを作成してSearchする

Indexerが文字列をAnalyzeしてくれるんだけど、デフォルトでctype_alpha() を利用していて、UTF-8のアルファベットしか読み込まないようで。

しかし、テキスト解析器およびクエリパーサは、 テキストやクエリをトークン化する際に ctype_alpha() を使用しています。ctype_alpha() は UTF-8 をサポートしていません。この処理は近いうちに書き直す必要があります。

Zend_Search_Lucene では Basic Multilingual Plane (BMP) 文字 (0x0000 から 0xFFFF まで) のみをサポートしており、 "supplementary characters" (コードポイントが 0xFFFF より大きい文字) はサポートしていません。


それは困るので、日本語でAnalyzeしたい。


class JPAnlyzer extends Zend_Search_Lucene_Analysis_Analyzer_Common


として拡張するのだけど。


さて、日本語形態解析を俺がソース書くのか?マジっすか。完成したらすげーよね。Zendの開発者日本第一号だろ。あははは。

俺、形態解析の手法を知らないんですよね。手法さえ分かればPHPのコード書くんだけど。。。

LuceneはもともとJavaかぁ。Javaのコードなら目をつぶっても読めるのでJavaのコードをPHPに再構築すればいいか。
形態解析の本を買ってきて。。。

道は険しいなぁ。

誰かやってくれないかなぁ。





GETAエンジン使えたら楽なのになぁ