mongodb全文搜索否定词

时间:2013-12-05 11:24:07

标签: php mongodb full-text-search mongodb-php

我目前正在研究搜索引擎。我是用php / mongodb做的​​。

新功能Full Text Search在很大程度上完成了这项工作,但我遇到了这种情况。

这是一个例子: 我搜索"Pizza -restaurant"(我是法国人,但这些话是透明的)

对于负面条款,有很多“餐馆”的文件被删除。

但是里面还有3或4个带有“餐厅”的文件。

在这些文件中,“餐馆”就像任何其他词。它与空间分开,没有特殊的特征。它以大写字母书写。 (但大写似乎不是原因)

如果有帮助,调试字符串为"[queryDebugString] => pizza||restaur||||" 以下是未删除的文档示例:

BAR - RESTAURANT LE ST MICHAL CAMPAGNARD, BAR - RESTAURANT LE ST MICHAL

HOTEL - RESTAURANT rd 1120 19460 auberge de la route Spécialités gastronomiques du terroir

编辑:以下是执行搜索的命令:

$result = $this->_dbLocal->command(
            array(
            'text' => 'boutique', //this is the name of the collection where we are searching
                'search' => $q, //the string to search
                // 'language' => 'french',
                'limit' => 500,
        )
    );

编辑:通过一些测试,否定词在搜索和索引中与language: none配合得很好。但是对于language: none,我的搜索不再使用停用词了,这非常有用......

除了负面条款之外,还有什么方法可以使用停用词吗? :/

感谢您的时间!

吉勒。

1 个答案:

答案 0 :(得分:0)

在同一问题上与mongodb-user thread交叉引用此内容。这被确认为SERVER-11994中的一个错误,并且已经在2.5.5和即将发布的2.6版本中得到修复。