に私はLucene.Net 2.9.2を使用していると私は私がカスタムトークナイザを作成する必要があります数えるが、私は何かを明らかに不足して頂く場合にチェックしたいです。トークン化のキーワードはLucene.Net
文書は、タイトル、キーワードおよびコンテンツプラスなど、著者、日付フィールドとして格納された各ようないくつかのメタデータで構成されています。ドキュメントはソフトウェア技術文書であり、タイトル、キーワード、および/またはコンテンツに '.Net'、 'C ++'、 'C#'などのフレーズを含むことがあります。
私はキーワードフィールドとStandardAnalyzerタイトルのためにとコンテンツのためKeywordAnalyzerを使用しています - 文書が非常に長くなることとしてストップワードと小文字などが必要です。
「C#」のように検索したいだけでなく、「CSharp」、「C#.Net」なども検索するように検索用のシノニムカスタムフィルタを作成しました。トークナイザは既に '#' 「C#」や「++」がC++の「C」言語リファレンスと混同されている可能性があります。
私はトークン化を分岐させる必要があるタイトルとコンテンツをインデックス化するとき現在のトークンがキーワード句の一部であるか、またはその同義語のいずれかであるかどうかを判定します。
は、最善のアプローチですか?多くの感謝の前に:)
こんにちはアルトゥル、あなたの答えに感謝。私は、KeywordMarkerFilterがバージョン3.1のJava APIに導入されたと考えています。現在は2.9.2が最新バージョンであるため、現在は.netでサポートされていません。しかし、あなたが提案していることは、私が考えていることです。すなわち、.netでカスタムトークナイザをエミュレートすることです。おかげで再び:) – eslsys
あなたは、私は、ビューのLuceneのポイントからの質問に答えた正しいそれはそれにもかかわらずに役立ちます願っています。 –
Arturのおかげで、私のアプローチの潜在的な選択肢の絞り込みに役立ちました。他の誰かが視点を持っている場合には、数日後に質問を残しておきます。おかげで再び – eslsys