2010-10-14 11 views
0

J'ai une question est-il possible d'effectuer une recherche d'expression avec des jokers dans solr/lucene comme si j'ai deux requêtes ont tous les deux exactement les mêmes résultats. One est:Question relative à la recherche d'une phrase dans lucene/solr?

+Contents:"change market" 

et l'autre est:

+Contents:"change* market" 

Je suppose que la seconde devrait correspondre "marché des changes", mais il ne revient pas de matchs.

Répondre

3

Vous pouvez le faire en Lucene avec ComplexPhraseQueryParser. Solr a la possibilité de brancher l'analyseur de requêtes personnalisé avec QParserPlugin. Vous pouvez éventuellement utiliser ces deux pour avoir la fonctionnalité souhaitée avec Solr.

0

IMO il n'est pas possible de rechercher des caractères génériques avec une phrase. Vous voudrez peut-être envisager d'utiliser deux requêtes à la recherche de proximité. (Q = changement * marché & qs = 1) http://wiki.apache.org/solr/SolrRelevancyFAQ#How_can_I_search_for_one_term_near_another_term_.28say.2C_.22batman.22_and_.22movie.22.29

+0

J'avais essayé ce que vous disiez mais malheureusement cela ne fonctionne pas car je suppose qu'il obtiendra des documents ayant changé * ou marché dans le contenu. –

+0

@Ahsan: cela dépend de l'opérateur par défaut dans le schéma, vous pouvez le mettre à 'ET' pour obtenir le résultat souhaité. – KaKa

Questions connexes