namazu-ml(avocado)


[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

HiraganaOpt and NoSymbolOpt (mknmz.pl)



古川です。

現バージョンの話ではなくて、今後の仕様で検討、ということでいいのですが、
mknmz.pl の HiraganaOpt と NoSymbolOpt に、ちょっとしたバリエーション
も用意していただけないでしょうか?

(1) HiraganaOpt は「平仮名のみの単語は登録しない」ですが、これの、バリ
    エーションとして、「単語末尾の平仮名は削除する」。

    これは、形容詞や動詞の活用形が、それぞれ別に登録されてしまうのを防
    ぎたい場合に使うと便利です。


(2) NoSymbolOpt は「記号はすべて削除する」ですが、これのバリエーション
    として、「単語の先頭 & 末尾の記号は削除する」。

    なぜこの仕様が欲しいかと言うと、例えば「(tcp/ip)」という語を登録し
    てあっても、それを実際に検索する人は、(少なくとも私の周りには) い
    ないためです。

    でも、記号を全て削除してしまうのも、ちょっと意図とは違うので。


実をいうと、これらは、いままで、私のところでは、勝手にオプションを増や
す形で改造して運用していたのですが、正規のオプションが増えると、ぶつか
ってしまうことになるので、やはりキチンとお願いしておこうと思いまして…

ちなみに、japanese_wakatize のループの中で、

            $tmp[$ndx] =~ s/(\xa4[\xa1-\xf3])+ / /g;

とやれば (1) が、

            $tmp[$ndx] =~ s/ [^ a-zA-Z0-9\x80-\xff]+/ /g;
            $tmp[$ndx] =~ s/[^ a-zA-Z0-9\x80-\xff]+ / /g;

とやれば (2) が実現できます。

(これらを使うと、当然「平仮名だけ」「記号だけ」の語は削除されます)

-- 

                                        ヤマハ(株)ピアノプレーヤ設計課
                                                              古川 令
                                             furukawa@xxxxxxxxxxxxxxxx