私はLuceneを使用してインデックスを検索しています。私の唯一の問題は、返されるものの特定のフィールドが1つだけ必要なことです。ドキュメント全体ではなく、結果に特定のフィールドだけを返すようにLuceneを指定できますか?Luceneから特定のフィールドのみを返します。検索
3
A
答えて
9
これは、FieldSelector
クラスが存在する理由です。あなたは小さなフィールドをロードすることに興味があるなら あなたがこの
class MyFieldSelector : FieldSelector
{
public FieldSelectorResult Accept(string fieldName)
{
if (fieldName == "field1") return FieldSelectorResult.LOAD_AND_BREAK;
return FieldSelectorResult.NO_LOAD;
}
}
のようなクラスを実装し、indexReader.Document(docid,new MyFieldSelector());
としてそれを使用することができ、これは、順番に大きなフィールドをロードするために防ぐことができます、ドキュメントを読み込む際のスピードアップを意味します。私はあなたがいくつかのグーグルでより詳細な情報を見つけることができると思います。
-2
「特定のフィールドを返す」とはどういう意味ですか? Document.get()関数は、要求したフィールドだけを返します。
-2
はい、間違いなくあなたが聞いていることをすることができます。 document.get()メソッドにフィールド名(大文字小文字を区別)を含めるだけです。
string fieldNameText = doc.Get("fieldName");
参考までに、通常、質問にいくつかのコードを含めることをお勧めします。それは良い答えを提供することを容易にします。
関連する問題
- 1. Zend Search Lucene - 特定のフィールドを検索
- 2. Zendでのフィールドの昇格検索Lucene
- 3. Lucene - 数値フィールドを検索する
- 4. LuceneでTokenStreamフィールドを検索する
- 5. 検索時のフィールドでlucene setブースト
- 6. ユニオンサブクラスから特定のサブクラスのみを返します
- 7. jqGrid:検索ツールバーの特定の検索フィールドを非表示にする方法
- 8. 特定のフィールドのみで検索可能なMicrosoft Accessのデータベースをどのように作成しますか?
- 9. Luceneのフィールドではありません検索可能
- 10. SymfonyのAPI呼び出しの特定のフィールドのみを返します
- 11. zend検索lucene
- 12. Luceneフルテキスト検索
- 13. Magento Lucene検索
- 14. Lucene検索
- 15. Lucene検索エラースタック
- 16. Lucene 4のintフィールドを検索するには?
- 17. 検索エンジンLuceneとデータベースの検索
- 18. Sunspot/Solr全文検索 - 全文検索から特定のフィールドを除外する方法?
- 19. データベース内の特定のフィールドを検索する方法
- 20. Luceneで特定の範囲の用語を検索するには
- 21. 検索パラメータがnullの場合の結果を返します。i Zend Lucene
- 22. 弾性検索 - すべてのインデックス間で特定のフィールドのみを取得します
- 23. Google検索オートコンプリートアドレスapi - 特定の都市のみを検索する
- 24. のZend Luceneの - 検索テキストファイル
- 25. 異なるフィールドでLuceneの検索結果を並べ替え
- 26. solrの特定のフィールドで検索する方法
- 27. DevExpress VerticalGridのフィールド値で特定のレコードを検索
- 28. Lucene(PyLucene)との単一フィールド用語の検索
- 29. Lucene:フィールドの値の長さによる検索/フィルタリング
- 30. Boolean検索でLucene
これは私が今使っていることですが、1つのフィールドしか必要ないので、ドキュメント全体ではなくそのフィールドだけを返す方法があるのだろうかと思っていました。 – aaronj
@aaron:私はまだあなたが「リターン」を意味するかどうかはわかりません。 'Document.get'から得られるテキストは、その1つのフィールドのテキストに過ぎません。他のフィールドの値を保存したくない場合は、保存されていないフィールドとしてマークするだけです。 – Xodarap
-1しかし 'reader.Document'は単一のフィールドだけでなく、ドキュメント全体を読み込みます –