Hello, everyone. I have maybe not standard question, how to use together Automaton and SpanMultiTermQueryWrapper.
Main idea of this approach is solve some problem with search. I need search combination of numbers on text. Combination is any numbers [0-9]{3}-[0-9]{3}-[0-9]{3}, exclude 111 in any position. So DFA for this will be: Automaton full = new RegExp("[0-9]{3}.[0-9]{3}.[0-9]{3}").toAutomaton(); Automaton exclude1 = new RegExp("111.[0-9]{3}.[0-9]{3}").toAutomaton(); Automaton exclude2 = new RegExp("[0-9]{3}.111.[0-9]{3}").toAutomaton(); Automaton exclude3 = new RegExp("[0-9]{3}.[0-9]{3}.111").toAutomaton(); full = Operations.minus(full, exclude1); full = Operations.minus(full, exclude2); full = Operations.minus(full, exclude3); full = MinimizationOperations.minimize(full); Query query = new AutomatonQuery(new Term("body"), full); This query working fine with single term like 123-456-789, but we are using StandardAnalyzer for body, so it will be separated to 3 Terms {123, 456, 789} and search will not work. I want use SpanMultiTermQueryWrapper to make search terms with order using automata rules. Any clue? Thanks PS. Operations.subsetOf(Automata.makeString("123-456-789"), full); => true; Operations.subsetOf(Automata.makeString("111-456-789"), full); => false. TestCase for Automata works fine. Regards, Valentin Popov