0

我想在 schema.xml 中使用以下配置进行通配符查询

<fieldType name="textGeneral" class="solr.TextField" sortMissingLast="true" positionIncrementGap="100">
    <analyzer>
        <tokenizer class="solr.KeywordTokenizerFactory" />
        <filter class="solr.WordDelimiterFilterFactory" generateWordParts="1" preserveOriginal="1"/>
        <filter class="solr.LowerCaseFilterFactory" />
    </analyzer>
</fieldType>

我想找到的数据是The Frick Collection, New York.

当我执行以下查询时,q=image_copyright:"frick collection,"一切都很好。

但是当我尝试添加通配符搜索时,q=image_copyright:"*ck collection,"我没有得到任何结果。

有谁知道如何使用 NGram Tokenizer 来减慢索引时间。

编辑 2012/04/19 我意识到你可以做这样的事情。q=image_copyright:*ck?collection,*但这不是 100% 正确的

4

2 回答 2

2

Solr 4.8 添加了对“复杂短语查询”的支持,其中包括带引号的通配符。

于 2014-04-25T15:35:56.780 回答
1

这是通配符查询未分析的众所周知的问题,请参见此处

从最近发布的 3.6.0 开始,应该已修复此问题

于 2012-04-19T13:31:05.750 回答