Maybe also have a look at Lucene's DirectSpellChecker ( https://lucene.apache.org/core/8_5_0/suggest/org/apache/lucene/search/spell/DirectSpellChecker.html) -- it is doing something similar,
Mike McCandless http://blog.mikemccandless.com On Sun, Jun 7, 2020 at 4:33 PM Uwe Schindler <[email protected]> wrote: > How about using a FuzzyQuery and using a Rewrite subclass to collect > terms? This works with all MultiTermQuery subclasses. > > Basically you set a custom rewrite (I think you want ScoringRewrite) that > collects the terms and rewrite to nothing (e.g. MatchNoDocsQuery). You just > rewrite the MultiTermQuery and ignore the results. > > Uwe > > Uwe > > Am June 7, 2020 8:15:48 PM UTC schrieb Matt Davis <[email protected] > >: >> >> I am trying to upgrade my project to Lucene 8.5 from 8.4 and have hit a >> snag. I had been using >> the FuzzyTermEnum constructor: >> FuzzyTermsEnum(Terms terms, AttributeSource atts, Term term, int >> maxEdits, int prefixLength, boolean transpositions) throws IOException >> This constructor is no longer public. I have been sharing >> an AttributeSource with MaxNonCompetitiveBoostAttribute set and no longer >> see a way to do that. You can see my usage below: >> >> https://github.com/zuliaio/zuliasearch/blob/master/zulia-server/src/main/java/io/zulia/server/index/ShardTermsHandler.java#L108 >> >> What is the new way to handle this? >> >> Thanks, >> Matt >> > > -- > Uwe Schindler > Achterdiek 19, 28357 Bremen > https://www.thetaphi.de >
