【发布时间】:2015-02-25 16:44:20
【问题描述】:
我当前在架构中的字段类型目前被定义为仅进行完全匹配;
<fieldType name="text_exact" class="solr.TextField" positionIncrementGap="100">
<analyzer type="index">
<tokenizer class="solr.KeywordTokenizerFactory"/>
<filter class="solr.LowerCaseFilterFactory"/>
<filter class="solr.TrimFilterFactory"/>
</analyzer>
<analyzer type="query">
<tokenizer class="solr.KeywordTokenizerFactory"/>
<filter class="solr.LowerCaseFilterFactory"/>
<filter class="solr.TrimFilterFactory"/>
</analyzer>
</fieldType>
现在,我想实现完全匹配,但在索引过程中会删除特殊字符。
我读到使用 StandardTokenizerFactory 会删除特殊字符。但是,我不希望它在空格上拆分短语的副作用。
是否可以在索引期间执行 StandardTokenizerFactory 然后在查询 KeywordTokenizerFactory 中使用?
还有其他想法吗?
【问题讨论】:
-
KeywordTokenizerFactory 不应删除任何特殊字符,您能否举例说明您用于索引/搜索的一些值?
-
我正在尝试否定除 & 和 @ 我要替换的所有特殊字符。
标签: solr