Я использую hibernate-search-3.2.1.Final и хочу проанализировать введенные мной данные в черепицу. Из того, что я вижу в документации, ShingleAnalyzerWrapper кажется именно тем, что мне нужно. Я тестировал как WhitespaceAnalyzer, StandardAnalyzer, так и SnowballAnalyzer в качестве анализатора по умолчанию для ShingleAnalyzerWrapper.
Version luceneVersion = Version.LUCENE_29;
SnowballAnalyzer keywordAnalyzer= new SnowballAnalyzer(luceneVersion, "English", StopAnalyzer.ENGLISH_STOP_WORDS_SET);
ShingleAnalyzerWrapper shingleAnalyzer = new ShingleAnalyzerWrapper(keywordAnalyzer, 4);
shingleAnalyzer.setOutputUnigrams(false);
QueryParser keywordParser = new QueryParser(luceneVersion, "keyword", keywordAnalyzer);
Query keywordQuery = keywordParser.parse(QueryParser.escape(keyword.toLowerCase()));
Однако запрос вернулся пустым. Я ожидал, что ключевое слово вроде "hello world, this is Lucene" приведет к черепице [привет, мир, это, мир, это люцен, это люцен]
Сообщите мне, верны ли мои ожидания и использование ShingleAnalyzerWrapper.
Спасибо, Райан