我創建一個Lucene的文件是這樣的:JAVA Lucene沒有給字段上的搜索結果?
Document document = new Document();
document.add(new Field(FIELD_FOLDER_PATH,mSearchInput, Field.Store.YES, Field.Index.NOT_ANALYZED));
Reader reader = new FileReader(file);
document.add(new Field(FIELD_CONTENTS, reader));
indexWriter.addDocument(document);
當上的內容執行查詢,並使用野生字符*我能夠擷取結果:
QueryParser queryParser = new QueryParser (Version.LUCENE_36,FIELD_CONTENTS, analyzer);
Query query = queryParser.parse(searchString+"*");
但是,當我使用的是相同的查詢FIELD_FOLDER_PATH,我沒有得到任何結果:
QueryParser queryParser = new QueryParser (Version.LUCENE_36,FIELD_FOLDER_PATH, analyzer);
Query query = queryParser.parse(FolderPath+"*");
然而,只有當我提供了精確的字符串,我能夠獲取資源ULTS。
我的問題是:爲什麼我無法使用(*)在FIELD_FOLDER_PATH中獲取結果?是因爲我創造這個領域的方式嗎?
,當索引和搜索的FIELD_FOLDER_PATH場? – 2012-07-11 17:43:10