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