Я хочу генерировать символы ngram для строки. Ниже представлен Lucene 4.1 lib, который я использовал для этого.Как использовать токенизатор ngram в lucene 5.0?
Reader reader = new StringReader(text);
NGramTokenizer gramTokenizer = new NGramTokenizer(reader, 3, 5); //catch contiguous sequence of 3, 4 and 5 characters
CharTermAttribute charTermAttribute = gramTokenizer.addAttribute(CharTermAttribute.class);
while (gramTokenizer.incrementToken()) {
String token = charTermAttribute.toString();
System.out.println(token);}
Однако я хочу использовать Lucene 5.0.0 для этого. NGramTokenizer сильно изменил в Lucene 5.0.0 из предыдущей версии, см. http://lucene.apache.org/core/5_0_0/analyzers-common/index.html?org/apache/lucene/analysis/ngram/NGramTokenizer.html.
Кто-нибудь знает, как использовать Lucene 5.0.0 для выполнения ngrams?
Спасибо! Оно работает. Полезно знать метод tokenizer.setReader (stringReader), который может читать StringReader. – HappyCoding