Lucene:如何将StandardTokenizer与我自己的Tokenizer结合使用

时间:2012-05-15 13:32:52

标签: lucene tokenize

我正在构建一个Tokenizer,它将采用文本并在白色空格处分割并添加句子和段落标记(here's a question related to that if you're interested)但除了运行它之外,我还希望能够运行StandardTokenizer (和StandardFilter)以便我可以更聪明地对单词进行标记化。在这里,我有一个问题22。

  • 如果我首先运行StandardTokenizer(可能还有StandardFilter),那么我会获得更智能的标记化,但我没有任何标点符号/空格/大写字母作为判断/段落检测的基础。
  • 如果我首先使用我的Tokenizer,那么我能够包含句子和段落的必要标记,但我无法从StandardTokenizer的智能标记化中受益,当然也无法从需要StandardTokenizer的StandardFilter中受益已经开始了。

我应该使用什么模式来解决这个问题?最实际的,我可能只想用标题和段落标记来扩充StandardTokenizer的TokenStream。虽然更一般地说我可能想要将句子/段落标记器与任何其他标记器一起使用。

1 个答案:

答案 0 :(得分:1)

您实际上可以更改StandardTokenizer的语法,并为您的自定义要求生成Tokenizer。这就是我在Generating a custom Tokenizer for new TokenStream API using JFlex/ Java CC

所做的