【问题标题】:Hibernate search, possible to search special chars? [duplicate]休眠搜索,可以搜索特殊字符吗? [复制]
【发布时间】:2014-06-10 07:33:14
【问题描述】:

是否可以通过 fullTextQuery 找到带有特殊字符的确切单词?卢克搜索与查询很好,但从 fullTextQuery 不返回任何结果。

new BooleanClause(qBuilder.keyword().wildcard().
onField("field").matching("c++").createQuery(),BooleanClause.Occur.MUST)

没有通配符搜索没有特殊字符的“c”。

如何解决这个问题?

【问题讨论】:

  • 首先你如何索引,特别是分析领域?如果“c++”按原样编入索引,那么为什么不进行关键字()查询。在引擎盖下,这变成了一个 Lucene TermQuery。另外,'+' 不是 Lucene 中的特殊通配符,因此在这方面应该不会造成任何问题。

标签: java hibernate lucene hibernate-search


【解决方案1】:

在该字段上使用@Analyzer(impl = WhitespaceAnalyzer.class),可能会解决您的问题。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2011-08-02
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多