Namazu-users-ja(旧)
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: Namazu関数で英数字を含む単語は検索できません。
寺西です。
seijun86@xxxxxxxxxxx wrote:
>
> > 簡単そうなのは "PAC3" なので、これに絞って考えると、まずは
> > PHP から "PAC3" で検索してみればどうなるでしょうか?
> > また、NMZ.w に "PAC3" が入っているかも確認してください。
> >
> > わかち書きには kakasi と chasen のどちらを使っているでしょうか?
> kakasiを使っています。全角英数字を半角英数字にして検索しましたら、検索できまし
> た。それで、PHP側にmb_convert_kana($keyword, "a", "EUC")を入れて、キーワードの
> 全角英数字を半角英数字に変換してから検索するようにしました。
なるほど。
> さて、どうして全角英数字では検索できないのでしょうか。
Namazu では、全角英数字と半角英数字を同一として扱うために、
全角英数字を半角英数字に変換した上で、インデックスを作成します。
そして、検索文字列を namazu.cgi や namazu に渡した場合、全角英数字を
半角英数字に変換した上で、検索を行います。
正確には PHP の namazu をきちんと調べてみないとはっきりしたことは
いえないので、あくまでも想像ですが...。
PHP の namazu が namazu のどのルーチンを呼び出しているのかわかりま
せんが、検索文字列の全角英数字を半角英数時に変換するルーチンを通さず
直接検索ルーチンを呼び出しているのではないかと想像します。
また、フレーズ検索や正規表現の検索ができないようでしたら、ワード検索
のルーチンを呼び出しているのではないかと思います。
(こっちは特に自信なし。)
--
=====================================================================
寺西 忠勝(TADAMASA TERANISHI) yw3t-trns@xxxxxxxxxxxxxxx
http://www.asahi-net.or.jp/~yw3t-trns/index.htm
Key fingerprint = 474E 4D93 8E97 11F6 662D 8A42 17F5 52F4 10E7 D14E