【问题标题】:Partial content name does not return any results in solr?部分内容名称在 solr 中不返回任何结果?
【发布时间】:2014-07-16 11:56:57
【问题描述】:

我正在使用 solr 4.6,并且我在 solr 中定义了一个字段名称内容名称,索引并存储为 true。

<field name="content_name" type="string" indexed="true" stored="true"/> 

我也在复制字段中定义了这个字段

 <copyField source="content_name" dest="text"/>

我上传了一个名为 abc.txt 的内容,当我尝试使用关键字 abc 在 solr 中搜索时,它没有返回任何结果。我需要输入 abc* 或 abc.xml 来获取此文档。

有什么办法可以解决这个问题?

问候。

【问题讨论】:

  • 如果您包含示例文档和实际查询,人们会更容易帮助您。

标签: solr


【解决方案1】:

这取决于您查询的是哪个字段,只要您查询的是content_name,它需要完全匹配(或使用通配符,前缀匹配)。正如您在搜索 abc*abc.xml 时发现的那样,这两个匹配项。

根据字段text 的定义,查询该字段的运气会更好。如果它被定义为text_general 的默认类型,它将被标记和过滤,并且根据标记器,text:abc 作为查询应该可以工作。

【讨论】:

    【解决方案2】:

    谢谢,

    我使用 WordDelimiterFilterFactory 来完成这项工作。

    <filter class="org.apache.solr.analysis.WordDelimiterFilterFactory"
                    generateWordParts="1"
                    generateNumberParts="1"
                    catenateWords="1"
                    catenateNumbers="1"
                    catenateAll="1"
                    splitOnCaseChange="1"
                    splitOnNumerics="1"
                    preserveOriginal="1"
                    stemEnglishPossessive="1"/>
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2012-06-22
      • 1970-01-01
      • 1970-01-01
      • 2022-10-13
      • 2012-01-25
      相关资源
      最近更新 更多