NavicSearch API で利用しているTokenizer 0.5
NavicSearch APIで利用している Tokenizerは, Solr付属のCJKTokenizerとほぼ同等の動きをします. ラテン文字についてはスペースで分割してTokenを作成. 非ラテン文字については bi-gram でTokenを切り出します.
ソース: ecnavi-tokenizer-0.5.tar.bz2
ECナビ デベロッパー ネットワーク: NavicSearch API で利用しているTokenizer 0.1からの変更点は以下の通りです.
- Solr 1.3に対応しました.
- トークンの位置情報がずれることがあったの修正しました.
- 非ラテン文字の間に挟まれた「・==☆★・」 をトークン生成の際に無視するようになりました. これにより「つのだ☆ひろ」を「つのだひろ」でも検索可能になりました. 逆の可能です.
- 「-」で区切られたラテン文字列から, 「-」抜きのトークンも生成するようにしました. 例えば, 「cyber-shot」からは「cyber」「shot」「cybershot」という3つのトークンが生成されます. 「cybershot」からは, 「cybershot」というトークンが生成されます. 「cybershot」で検索を行なうと「cybershot」「cyber-shot」のどちらも検索に成功しますが, 「cyber-shot」では「cyber-shot」だけ検索に成功します. このため, ラテン文字で構成された検索語は「-」を除いて連結するとよい結果が得られるようになりました.
