無題
アクセス解析していたら、アンパンマン質問箱でAND検索を試みた形跡があったので、ちゃちゃっと実装してみました。
ところで、予定ページには既に書いていたのですが、正規表現検索というのを考えています。
例えば、「(苦|((ニ|に)(ガ|が)))(瓜|((ウ|う)(リ|り)))(マ|ま)(ン|ん)」という正規表現を作れば「ニガウリマン」でも「苦ウリまん」でも「にガ瓜まン」でもマッチさせることができるのです。
ただ問題は、ユーザーは普通正規表現を使わないこと、データベースに登録できるのは私の思いついたパターンのみであるということ。
つまり、ユーザーが正規表現で検索することはないと考えたほうが良いのです。
だから逆に正規表現のほうをこちらで用意してやると、ユーザーから来る予想外の表記ゆれにも柔軟に対応できるというわけです。
ところがこちらにも問題がありまして、部分一致ができないんです。
先ほどのニガウリマンの例でいけば、「ニガウリ」で検索すると、正規表現後半の「(マ|ま)(ン|ん)」の部分にマッチしないのでニガウリマンが見つけられないのです。
このあたりさえ解決できれば非常に便利になるはずなのですが…。
ちなみにこれをやると検索性確保のための表記ゆれの入力が不必要になるので、別名の項目自体を抹消するかもしれません。