我们有一个数字的故障单格式除以破折号,即n-nnnnnnn
链接http://lucidworks.lucidimagination.com/display/solr/Tokenizers(在标准Tokenizer和Classic Tokenizer的章节中)暗示了在支持Unicode标准附件UAX#29之前和之后:
单词用连字符分开,除非单词中有数字,在这种情况下,标记不会被分割,数字和连字符会被保留。
我们的Solr安装仅使用StandardTokenizerFactory,但此故障单格式正在破折号的查询中拆分。我是solr / lucene的新手。我已经下载了3.6.1的代码,而评论意味着相反(除非虚线数字仍被视为数字)。我无法跟踪Lex处理:
任何人都可以澄清这一点。
答案 0 :(得分:1)
您需要正则表达式模式标记器。此标记生成器使用Java正则表达式将输入文本流分解为标记。 pattern参数提供的表达式可以解释为分隔标记的分隔符,或者将应该从文本中提取的模式匹配为标记。
有关Java正则表达式语法的详细信息,请参阅Javadocs for java.util.regex.Pattern。