0

.Net 3.5 用の Lucene dll (Version.LUCENE_30) を使用しています。

インデックス作成時にドキュメントに一連のフィールドを追加し、取得時にそれらのフィールドでフィルター処理したいと考えています。

インデックス作成に使用するコードは次のとおりです。

'These are analyzed fields
doc.Add(New Lucene.Net.Documents.Field("FileText", FileText, Lucene.Net.Documents.Field.Store.YES, Lucene.Net.Documents.Field.Index.ANALYZED))
doc.Add(New Lucene.Net.Documents.Field("FileName", FileName, Lucene.Net.Documents.Field.Store.YES, Index.ANALYZED))

'These are non-analyzed fields. Would like to use these for filtering.
doc.Add(New Lucene.Net.Documents.Field("FieldA", FieldA, Lucene.Net.Documents.Field.Store.YES, Index.NOT_ANALYZED))
doc.Add(New Lucene.Net.Documents.Field("FieldB", FieldB, Lucene.Net.Documents.Field.Store.YES, Index.NOT_ANALYZED))
doc.Add(New Lucene.Net.Documents.Field("FieldC", FieldC, Lucene.Net.Documents.Field.Store.YES, Index.NOT_ANALYZED))

上記のフィルターを使用して取得側のコードを提案してもらえますか? たとえば、ユーザーが FieldA='Lee Child' および FieldB='Random' フィルターでフィルタリングして、文字列 'Jack Reacher' を検索しているとします。

4

0 に答える 0