searchString =“我正在使用sql。服务器设置很容易。”;
当我在上面的字符串中搜索短语查询“Sql Server”时,它会给出不正确的结果。在上面的字符串中,sql和server由点(。)
分隔同时使用PhraseQuery和SpanQuery会得到相同的结果。
任何建议都将不胜感激!!!
答案 0 :(得分:0)
您可以编写一个分析器,它将点作为标记处理,因此您将获得3个标记 - “sql”,“。” (点)和“服务器”(我不知道任何现有的分析仪,可以做到这一点)。但它可能会导致不可预测的结果,所以我建议你忽略这种罕见的情况。如果它不是一个选项而你的程序大量使用文本的词汇结构,我建议使用一些自然语言处理工具,如GATE而不是Lucene。