如何增强solr.StandardTokenizerFactory来产生一些额外的令牌?

时间:2017-05-24 20:16:33

标签: solr tokenize

我有一个Solr 3.6部署。目前,我正在使用solr.StandardTokenizerFactory在索引编制过程中解析令牌。

这是展示我问题的两个示例流:

示例1:bob,a-z,000123,xyz生成令牌...... |bob|a-z|000123|xyz| ......这很好。

示例2:bob,a-6,000123,xyz生成令牌... |bob|a-6,000123|xyz| ...这不好,因为用户无法通过" 000123"进行搜索。

似乎StandardTokenizerFactory处理" 6,000"不同(可能是它的货币或产品编号?)因此它不会用逗号进行标记。

问题:我如何增强StandardTokenizer来完成它现在正在做的所有事情,并生成一些像这样的额外令牌......

bob,a-6,000123,xyz生成代币...... |bob|a-6,000123|xyz|a-6|000123|

...所以用户可以按" 000123"?

进行搜索

1 个答案:

答案 0 :(得分:1)

不确定您是否可以使用StandardTokenizerFactory做任何事情(也许可以创建自己的版本,但这似乎太麻烦了)。

您可以肯定做的是使用WordDelimiterFilterFactory。如果它没有发出你想要的术语,可以使用不同的参数,最后使用wdftypes.txt file来实现它