Поиск нескольких слов Lucene.Net по нескольким полям, использование подстановочных знаков и поиск по фразе, нечеткий поиск по всем

я новичок в lucene.net. я индексирую данные для нескольких полей с lucene.net. таким образом я сделал данные индекса

                    Document doc = new Document();
                    doc.Add(new Field("ID", oData.ID.ToString() + "_" + oData.Type, Field.Store.YES, Field.Index.UN_TOKENIZED));
                    doc.Add(new Field("Title", oData.Title, Field.Store.YES, Field.Index.TOKENIZED));
                    doc.Add(new Field("Description", oData.Description, Field.Store.YES, Field.Index.TOKENIZED));
                    doc.Add(new Field("Url", oData.Url, Field.Store.YES, Field.Index.TOKENIZED));
                    writer.AddDocument(doc);

теперь, когда пользователь выполняет поиск, пользователь может вводить такие данные, как Блок управления двигателем Audi BMW

1 )В первый раз я хочу, чтобы каждое слово, например [Audi] [BMW] [ECU] , выполнялось для поиска по полям, которые я индексирую, таким как заголовок, описание, URL. каждое слово должно искать по 3 полям с именем title, description, url . так что мне нужно сделать. какой код мне нужно написать.

2 )Второй раз фразу "Audi BMW ECU " следует искать в полях title,description,url .

3 )пользователь может использовать подстановочный знак при поиске Audi BMW ECU*или ЭБУ Audi BMW? 4 )Я хочу добавить нечеткий поиск вместе с поиском по нескольким словам, чтобы, если пользователь ошибся -в правописании, также появился результат.

пожалуйста, помогите мне, как я могу объединить всю логику и функциональность в моем коде и подпрограмме, так как в результате я получил результат всех видов пользовательского ввода.

по возможности обсудите этот вопрос подробно.

5
задан Thomas 5 July 2012 в 14:48
поделиться