0

我目前在drupal 6solr 配置中遇到问题。我想在drupal 6中使用与搜索相同的方法来实现搜索,然后apache solr它将返回 类似这样的结果......mysql%que%

question
questions
etc

我还需要实现精确搜索。

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

4

1 回答 1

1

Lucene 支持通配符查询,允许您执行诸如 book* 之类的搜索,它将查找包含诸如 book、bookstore、booklet 等术语的文档。Lucene 将这种类型的查询称为“前缀查询”。

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

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

QueryParser 默认不支持前导通配符(例如 *ook)。从 Lucene 2.1 开始,它们可以通过调用来启用QueryParser.setAllowLeadingWildcard( true )。请注意,这可能是一项昂贵的操作:它需要完整地扫描索引中的标记列表以查找与模式匹配的标记。

参考:Lucene 通配符搜索。

于 2013-08-27T09:53:56.117 回答