【问题标题】:How to index multiple words as a single tokens in hibernate search?如何在休眠搜索中将多个单词索引为单个标记?
【发布时间】:2012-05-07 12:21:44
【问题描述】:

我在我的项目中使用带有 solr 的休眠搜索,我的一个用例需要对数据进行标记化和索引,如下所示:

我的数据库字段之一是 varchar 并且具有值:New Road, Kings way(用逗号分隔)

我希望将 New Road and kings way 用作标记,而不是 New, road, kings and way,这样当我搜索 blah blah blah new road blah blah 时,它会显示新道路的结果,如果搜索文本包含新书,新道路的结果不会显示。

提前致谢

【问题讨论】:

    标签: search solr lucene tokenize


    【解决方案1】:

    您可以使用solr.PatternTokenizerFactory 对该字段进行标记和搜索 http://wiki.apache.org/solr/AnalyzersTokenizersTokenFilters

    【讨论】:

    • 感谢您的回复。您能否请包含一些带有休眠搜索注释的示例?
    • 好的,我开始工作了,但有一些问题。我可以分别为 ex: word1 word2, word3 word4 标记文本。现在当我搜索 word1 时,没有预期的结果,当搜索 word1 word2 时,1 个结果,再次符合预期,但最终用户将搜索某些内容像 blah blah word1 word2 blah blah 现在我没有得到任何结果,我正在使用休眠查询 DSL,请建议
    • 没有太多使用休眠的经验。您将需要浏览标记器/分析器列表并寻找您需要的组合
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-12-29
    • 1970-01-01
    • 2020-02-28
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多