Solr WordDelimiterFilter和斜杠字符

时间:2012-10-11 23:12:10

标签: solr

我有一个有趣的问题。我有一些代码字段的数据,其中包含一些标识符(大多数),格式如下:E.123 / 2012。

我已为此代码字段设置了fieldType:

<fieldType name="text_split" class="solr.TextField" positionIncrementGap="100">
<analyzer>
    <tokenizer class="solr.WhitespaceTokenizerFactory" />
<filter class="solr.WordDelimiterFilterFactory" generateWordParts="1" generateNumberParts="1" splitOnNumerics="1" preserveOriginal="1" />
<filter class="solr.LowerCaseFilterFactory" />
  </analyzer>
</fieldType>

如果我搜索确切的代码(“E.123 / 2012。”),我将得到预期的结果。如果我搜索“123 2012”,我也会得到预期的结果。如果我搜索“123/2012”字符串,则结果集为空。尝试使用catenateNumbers和catenateWords,并获得相同的结果。我在这里缺少什么?

有趣的是,使用字段分析工具,如果我选择“突出显示匹配”选项,则123/2012会给出匹配。但是当我尝试在Solr管理员的查询调试工具中使用它时,同样的查询没有产生任何结果。如果我使用wilcard搜索,查询有效,但我想避免这种情况。

Ps。:我错过了一些细节。我在Ubuntu Linux上使用Solr 3.5版。并且错误日志为空,不会记录任何异常。

0 个答案:

没有答案