SphinxQL - 如何匹配单个字符串中的单词

时间:2013-02-14 15:37:11

标签: sphinx match sphinxql

我有以下和其他几个字符串索引。所有单词都粘在一起。

  

Stringisaflexiblepieceofropeortwinewhichisusedtotie,绑定,orhangotherobjects。

这是来自维基百科的一句话。

  

String是一条灵活的绳索或绳索,用于绑定,绑定或悬挂其他物体。

我使用SphinxQL搜索多个单词。 E.g。

SELECT * FROM sentences WHERE MATCH('piece rope bind');

这应该返回上面的字符串,但它返回0行。

查询应该如何查找单词,而只是匹配字符串中的单词?

我已经玩过像

这样的排名选项
SELECT * FROM sentences WHERE MATCH('piece rope bind') OPTION ranker=matchany';

但没有成功。

非常感谢任何帮助!

1 个答案:

答案 0 :(得分:0)

使用min_infix_len - 启用中缀搜索http://sphinxsearch.com/docs/current.html#conf-min-infix-len

您可能需要enable_star = 0

或许也许你可以使用WordBreaker在索引之前重新打破长字符串:) http://sphinxsearch.com/blog/2013/01/29/a-new-tool-in-the-trunk-wordbreaker/