2012-03-16 5 views
0

私はSolrの検索と置換機能のようなものを探しています。Solrでの検索と置換?

私はsolrにドキュメントをダンプし、テキスト解析を行っています。時々私は単語のカップルをグループ化し、solrが1つの単一のトークンとしてそれを扱うようにする必要があるかもしれません。

例:「南アフリカ」は、後で処理するための単一のトークンとして扱われます。また、これらが動的であることに気付くと、最終的なユーザーがグループ化する単語を決定できるようになります。だからセマンティクスは必要ありません。

私の現在の計画は、これらの2つの単語の間に特殊文字を追加することです.Solrはそれを次の処理のための1つの単一のトークン(StandardTokenizerFactory)として扱います。

だから、のようなものを探しているイム:誰もがすべてのソリューションを持っていることができます

replace("South Africa",South_Africa") 

+0

私はあなたがトークンを「理解」するのWordNetや他の自然言語技術(品詞)が必要と思います。私は単語を理解できるフィルタに興味があります(例えば、 "ITマネージャ"と "雨が降っている"の区別)。 – aitchnyu

答えて

0

シノニムフィルタを使用し、これらの置換をsynonyms.txtファイルで定義します。すべての定義を取得したら、索引を再作成します。

フィールドには、シノニムの前にLowerCaseフィルタがあり、シノニムがLowerCaseの前に来る場合の両方を処理するために、おそらくこのようなエントリがあります。

南アフリカ、南アフリカ=> southafrica

詳細情報ここhttp://wiki.apache.org/solr/AnalyzersTokenizersTokenFilters#solr.SynonymFilterFactory

+0

cool ..ユーザーが2つの単語をグループ化してインデックスを再構築しようとするたびに、synonnyms.txtを作成する予定です。先端に感謝します。 – prasann

0

おそらくPatternReplaceFilterと賢い正規表現を使用できます。

+0

これらのフィルタは設定レベルの設定だけです。しかし、私のドキュメントごとに変更されます。 – prasann