public RussianAnalyzerProvider(IndexSettings indexSettings, Environment env, String name, Settings settings) { super(indexSettings, name, settings); analyzer = new RussianAnalyzer( Analysis.parseStopWords(env, indexSettings.getIndexVersionCreated(), settings, RussianAnalyzer.getDefaultStopSet()), Analysis.parseStemExclusion(settings, CharArraySet.EMPTY_SET) ); analyzer.setVersion(version); }
@Inject public RussianAnalyzerProvider(Index index, IndexSettingsService indexSettingsService, Environment env, @Assisted String name, @Assisted Settings settings) { super(index, indexSettingsService.getSettings(), name, settings); analyzer = new RussianAnalyzer(Analysis.parseStopWords(env, settings, RussianAnalyzer.getDefaultStopSet()), Analysis.parseStemExclusion(settings, CharArraySet.EMPTY_SET)); analyzer.setVersion(version); }
/** * Search in body using QueryParser * @param toSearch string to search * @param limit how many results to return * @throws IOException * @throws ParseException */ public void searchInBody(final String toSearch, final int limit) throws IOException, ParseException { final IndexSearcher indexSearcher = new IndexSearcher(reader); final QueryParser queryParser = new QueryParser("body", new RussianAnalyzer()); final Query query = queryParser.parse(toSearch); System.out.println("Type of query: " + query.getClass().getSimpleName()); final TopDocs search = indexSearcher.search(query, limit); final ScoreDoc[] hits = search.scoreDocs; showHits(hits); }
WebPageIndexer() { if (!shouldIndex()) return; try { dir = FSDirectory.open(new File(Play.tmpDir, "web-index")); analyzer = new RussianAnalyzer(version); } catch (IOException e) { throw new RuntimeException(e); } try { reopenIndex(); } catch (IOException ignore) {} }
@Override public RussianAnalyzer get() { return this.analyzer; }
protected void configureLucene() { bind(Stemmer.class).to(LuceneStemmer.class); bind(TextNormalizer.class).to(LuceneNormalizer.class); bind(CharArraySet.class).annotatedWith(Models.named(LuceneNormalizer.LUCENE_STOP_WORDS_MODEL)).toInstance(RussianAnalyzer.getDefaultStopSet()); }
@Provides @Singleton @NoStopWordFiltering public Analyzer getRussianWithStopWordsAnalyzer() { return new RussianAnalyzer(CharArraySet.EMPTY_SET); }
@Singleton @Provides public Analyzer getRussianAnalyzer() { return new RussianAnalyzer(); }
/** * Returns the default stopwords set used by Lucene language analyzer for the specified language. * * @param language The language for which the stopwords are. The supported languages are English, French, Spanish, * Portuguese, Italian, Romanian, German, Dutch, Swedish, Norwegian, Danish, Russian, Finnish, * Irish, Hungarian, Turkish, Armenian, Basque and Catalan. * @return The default stopwords set used by Lucene language analyzers. */ private static CharArraySet getDefaultStopwords(String language) { switch (language) { case "English": return EnglishAnalyzer.getDefaultStopSet(); case "French": return FrenchAnalyzer.getDefaultStopSet(); case "Spanish": return SpanishAnalyzer.getDefaultStopSet(); case "Portuguese": return PortugueseAnalyzer.getDefaultStopSet(); case "Italian": return ItalianAnalyzer.getDefaultStopSet(); case "Romanian": return RomanianAnalyzer.getDefaultStopSet(); case "German": return GermanAnalyzer.getDefaultStopSet(); case "Dutch": return DutchAnalyzer.getDefaultStopSet(); case "Swedish": return SwedishAnalyzer.getDefaultStopSet(); case "Norwegian": return NorwegianAnalyzer.getDefaultStopSet(); case "Danish": return DanishAnalyzer.getDefaultStopSet(); case "Russian": return RussianAnalyzer.getDefaultStopSet(); case "Finnish": return FinnishAnalyzer.getDefaultStopSet(); case "Irish": return IrishAnalyzer.getDefaultStopSet(); case "Hungarian": return HungarianAnalyzer.getDefaultStopSet(); case "Turkish": return SpanishAnalyzer.getDefaultStopSet(); case "Armenian": return SpanishAnalyzer.getDefaultStopSet(); case "Basque": return BasqueAnalyzer.getDefaultStopSet(); case "Catalan": return CatalanAnalyzer.getDefaultStopSet(); default: return CharArraySet.EMPTY_SET; } }
public Tokenizer() { Analyzer en_analyzer = new EnglishAnalyzer(Version.LUCENE_44); Analyzer es_analyzer = new SpanishAnalyzer(Version.LUCENE_44); Analyzer de_analyzer = new GermanAnalyzer(Version.LUCENE_44); Analyzer da_analyzer = new DanishAnalyzer(Version.LUCENE_44); Analyzer el_analyzer = new GreekAnalyzer(Version.LUCENE_44); Analyzer fr_analyzer = new FrenchAnalyzer(Version.LUCENE_44); Analyzer it_analyzer = new ItalianAnalyzer(Version.LUCENE_44); Analyzer pt_analyzer = new PortugueseAnalyzer(Version.LUCENE_44); Analyzer ru_analyzer = new RussianAnalyzer(Version.LUCENE_44); Analyzer fa_analyzer = new PersianAnalyzer(Version.LUCENE_44); Analyzer ar_analyzer = new ArabicAnalyzer(Version.LUCENE_44); Analyzer id_analyzer = new IndonesianAnalyzer(Version.LUCENE_44); Analyzer pl_analyzer = new MorfologikAnalyzer(Version.LUCENE_44); Analyzer nl_analyzer = new DutchAnalyzer(Version.LUCENE_44); Analyzer no_analyzer = new NorwegianAnalyzer(Version.LUCENE_44); Analyzer ro_analyzer = new RomanianAnalyzer(Version.LUCENE_44); Analyzer sv_analyzer = new SwedishAnalyzer(Version.LUCENE_44); Analyzer fi_analyzer = new FinnishAnalyzer(Version.LUCENE_44); Analyzer tr_analyzer = new TurkishAnalyzer(Version.LUCENE_44); Analyzer hu_analyzer = new HungarianAnalyzer(Version.LUCENE_44); Analyzer bg_analyzer = new BulgarianAnalyzer(Version.LUCENE_44); analyzers.put("en", en_analyzer); analyzers.put("es", es_analyzer); analyzers.put("de", de_analyzer); analyzers.put("da", da_analyzer); analyzers.put("el", el_analyzer); analyzers.put("fr", fr_analyzer); analyzers.put("it", it_analyzer); analyzers.put("pt", pt_analyzer); analyzers.put("ru", ru_analyzer); analyzers.put("fa", fa_analyzer); analyzers.put("ar", ar_analyzer); analyzers.put("id", id_analyzer); analyzers.put("pl", pl_analyzer); analyzers.put("nl", nl_analyzer); analyzers.put("no", no_analyzer); analyzers.put("ro", ro_analyzer); analyzers.put("sv", sv_analyzer); analyzers.put("fi", fi_analyzer); analyzers.put("tr", tr_analyzer); analyzers.put("hu", hu_analyzer); analyzers.put("bg", bg_analyzer); }
/** * Indexing documents with RussianAnalyzer as analyzer * * @param create to decide create new or append to previous one * @throws IOException */ public void index(final Boolean create, List<Document> documents) throws IOException { final Analyzer analyzer = new RussianAnalyzer(); index(create, documents, analyzer); }