Как изменить соединение по умолчанию с Lucene MultiFieldQueryParser

Вы должны подписать код, если хотите запустить свое приложение на iDevice, если оно не взломано.

Вы должны иметь лицензию на разработку, чтобы кодировать подпись ваших приложений.

Если вы не хотите покупать лицензию разработчика и являетесь студентом, вы можете применить Университетскую программу разработчиков iOS, которая позволяет вам тестировать ваши приложения на реальных устройствах, но не отправлять их в App Store.

https://developer.apple.com/programs/ios/university/

6
задан Jon Seigel 7 April 2010 в 02:05
поделиться

1 ответ

Класс MultiFieldQueryParser расширяет класс QueryParser . Возможно, вы могли бы просто настроить экземпляр этого класса, а не полагаться на его статические методы? Если вам действительно нужно настроить значения BooleanClause.Occur , вы можете сделать это позже.

String queryString = ...;
String[] fields = ...;
Analyzer analyzer = ...;

MultiFieldQueryParser queryParser = new MultiFieldQueryParser(fields, analyzer);
queryParser.setDefaultOperator(QueryParser.Operator.AND);

Query query = queryParser.parse(queryString);

// If you're not happy with MultiFieldQueryParser's default Occur (SHOULD), you can re-configure it afterward:
if (query instanceof BooleanQuery) {
    BooleanClause.Occur[] flags = ...;
    BooleanQuery booleanQuery = (BooleanQuery) query;
    BooleanClause[] clauses = booleanQuery.getClauses();
    for (int i = 0; i < clauses.length; i++) {
        clauses[i].setOccur(flags[i]);
    }
}
8
ответ дан 16 December 2019 в 21:45
поделиться
Другие вопросы по тегам:

Похожие вопросы: