Xapian - 除非向每个单词添加“”,否则搜索查询不会检索任何匹配项
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Xapian - 除非向每个单词添加“”,否则搜索查询不会检索任何匹配项相关的知识,希望对你有一定的参考价值。
使用C ++,我设法遵循此处的Xapian教程。
https://getting-started-with-xapian.readthedocs.io/en/latest/practical_example/index.html#
索引器程序按照我的预期工作,但搜索程序 - https://getting-started-with-xapian.readthedocs.io/en/latest/practical_example/searching/building.html - 仅适用于警告。
例如,当我运行相当于:
python2 code/python/search1.py db Dent watch
找不到匹配项,除非我改为编写以下内容:
python2 code/python/search1.py db '"Dent" "watch"'
哪个效果和我期望的一样好。问题是不太清楚为什么它有效(虽然我知道'''符号是某种搜索查询修饰符),以及我应该如何准备查询进行处理。
例如,Xapian::QueryParser
类构造函数是否可以为我添加“”符号?或者我应该在尝试检索匹配之前预处理输入?
答案
为了记录,使用以下queryParser.parse_query(input, queryParser.FLAG_PHRASE)
似乎解决了我的问题。
以上是关于Xapian - 除非向每个单词添加“”,否则搜索查询不会检索任何匹配项的主要内容,如果未能解决你的问题,请参考以下文章
除非我添加溢出,否则 CSS 背景颜色不会显示:隐藏?为啥?
除非与mouselistener一起使用,否则JLabel不会显示