Est-il possible de donner une étoile () entre le texte de recherche. Exemple => peo leCaractère générique (*) Recherche avec Sphinx de réflexion
Répondre
Oui. enable_star: 1
ou enable_star: true
dans votre sphinx.yml.
L'option enable_star permet la correspondance des préfixes ('foo *') et la correspondance des infixes ('* foo *'). Il ne vous permet cependant pas de coller le * au milieu d'un mot comme la question le demande. La meilleure solution simple que je peux suggérer pour le cas décrit est à la recherche en deux mots avec correspondance « tout »:
IndexedThingie.search('peo le', :match_mode => :any)
Si vous correspondant de style besoin spécifiquement « tout » pour tout le reste, vous devriez regarder dans la syntaxe correspondant à l'expression dans le manuel de Sphinx (http://sphinxsearch.com/docs/2.0.1/extended-syntax.html), qui est disponible si vous spécifiez le mode de correspondance 'extended' (voir la documentation du mode de correspondance TS: http://freelancing-god.github.com/ts/en/searching.html#matchmodes). Cela peut être compliqué, mais avec une manipulation de votre entrée de recherche, vous devriez être capable de le gérer. En particulier, regardez l'opérateur 'strict order', '< <'.
IndexedThingie.search('peo << le', :match_mode => :extended)