Php solr中的部分搜索与Drupal 6中类似sql的%que%相同

Php solr中的部分搜索与Drupal 6中类似sql的%que%相同,php,search,solr,drupal-6,Php,Search,Solr,Drupal 6,我目前在Drupal6solr配置中面临问题。我想在drupal 6中使用与mysql中相同的ApacheSolr实现搜索,如果我像%que%那样搜索,它将返回结果 像这样 问题 问题 etc 我还需要实现精确搜索 任何人对此有线索或补丁都将非常可观。提前感谢。Lucene支持通配符查询,允许您执行诸如book*之类的搜索,这将查找包含书籍、书店、小册子等术语的文档。Lucene将此类查询称为“前缀查询” Lucene还支持通配符查询,允许您在查询词的中间放置一张通配符。例如,您可以进行如下搜索

我目前在
Drupal6
solr配置中面临问题。我想在drupal 6中使用与mysql中相同的
ApacheSolr
实现搜索,如果我像
%que%
那样搜索,它将返回结果
像这样

问题
问题
etc

我还需要实现精确搜索


任何人对此有线索或补丁都将非常可观。提前感谢。

Lucene支持通配符查询,允许您执行诸如book*之类的搜索,这将查找包含书籍、书店、小册子等术语的文档。Lucene将此类查询称为“前缀查询”

Lucene还支持通配符查询,允许您在查询词的中间放置一张通配符。例如,您可以进行如下搜索:mi*pelling。这将匹配拼写错误(这是拼写这个单词的正确方法)和拼写错误(这是一种常见的拼写错误)

您可以使用的另一个通配符是“?”,一个问号。这个将匹配单个字符。这允许您执行诸如Bra?il之类的查询。这样的查询将匹配巴西和巴西。Lucene将这种类型的查询称为“通配符查询”

默认情况下,QueryParser不支持前导通配符(例如*ook)。从Lucene 2.1开始,可以通过调用
QueryParser.setAllowReadingWildcard(true)
来启用它们。请注意,这可能是一个代价高昂的操作:它需要扫描索引中的令牌列表以查找与模式匹配的令牌


参考资料:

尤其要注意开头带有“*”的查询。这些真的很贵。我以为索尔是免费的