2014-07-25 35 views
0

在我使用solr.MappingCharFilter由前,后字组件添加空格分开单词的时刻如何在Solr中分割单词不区分大小写,但在结果中保留大小写?

如:“富” - >“foo”的 分裂“foobar的”到“富巴” 但“Foobar的“将不匹配的映射,不会被拆分

但现在我也需要将它们拆分为不区分大小写,但保留在结果中的情况。 有什么办法可以实现: “foo” - >“foo”会将“FooBaR”分成“Foo BaR”吗?

回答

0

您应该对此用例使用WordDelimiterFilter。有关更多详细信息,请参阅https://cwiki.apache.org/confluence/display/solr/Filter+Descriptions#FilterDescriptions-WordDelimiterFilter,特别是“splitOnCaseChange”标志。

+0

感谢您的回答,但不是真正的我正在寻找。 (或只是我需要的一部分) – MrLang

+0

您使用错误的过滤器来分割单词就是我所说的。从文档(https://cwiki.apache.org/confluence/display/solr/CharFilterFactories#CharFilterFactories-solr.MappingCharFilterFactory)中,MappingCharFilter主要用于字符映射,例如“用于标准化é到e”。 – spyk

+0

我知道这是一个相当奇特的方法。 但我需要的是我可以定义一个单词列表(例如“foo”,“abc”),它会在这个单词周围添加围绕它的空格,并且保留原始大小写。 – MrLang