0
我想使用Zend搜索Lucene來通配一個字段。使用Zend搜索使用通配符的Lucene
$index = Zend_Search_Lucene::open("/data/my_index1");
$doc = new Zend_Search_Lucene_Document();
$doc->addField(Zend_Search_Lucene_Field::Text('date',$date->format('dmY')));
$index->addDocument($doc);
$index->updateIndex();
$hits = $index->find('2012*');
最後一行不起作用,因爲我的日期類似於02062012
。如果我嘗試使用$hits = $index->find('*2012*');
也不起作用。
有什麼想法?
你應該檢查日期是否正確索引。一些分析儀不會標記數字和日期。您應該使用luke瀏覽您的索引,以查看索引是否包含預期條款。 – dbrumann
我認爲索引是好的,因爲如果我嘗試用'$ hits = $ index-> find('02062012');'正在按照它應該的工作。 –
你試過'$ index-> find('0206 *');'?我不確定,但我認爲在您的查詢中使用星號不起作用,因爲它正在尋找包含2012年的術語以及其他內容。 – dbrumann