mam prostą indeksacje uzytkownikow, indeksuje 2 uzytkownikow o nickach pawel i pawel84
<?php $doc1 = new Zend_Search_Lucene_Document(); $doc1->addField( Zend_Search_Lucene_Field::Text( 'nick', 'pawel' ) ); $doc2 = new Zend_Search_Lucene_Document(); $doc2->addField( Zend_Search_Lucene_Field::Text( 'nick', 'pawel84' ) ); $index = Zend_Search_Lucene::create( $path ); $index->addDocument( $doc1 ); $index->addDocument( $doc2 ); ?>
wszystko ok, indeksy dodane
teraz wyszukiwanie:
<?php $str = ' wyszukiwane slowo '; $query = new Zend_Search_Lucene_Search_Query_Phrase(); $term = new Zend_Search_Lucene_Index_Term( $str ); $query->addTerm( $term ); $resulst = $index->find( $query ); ?>
i tak dla wyrazeń:
-'pawel' => znajduje 2 pola
- 'pawel84' => nic nie znajduje
- 'paw', 'wel' lub '84' i tym podobnych indeksow nic nie znajduje
i pytanie dlaczego tak to dziala?
w jaki sposob moge wyszukac osoby po nick zawierajacym np. paw lub 84 w nazwie?
czemu szukajac 'pawel' znajduje mi wszystkie wyniki a 'pawe' nic nie znajduje?