Я храню информацию о местных "событиях". Они описываются 3-мя вещами - адрес, дата, ключевые слова (теги). Я хочу иметь только одно окно поиска по крайней мере для адреса и ключевых слов. Дата может идти в отдельном поле. Я предполагаю, что большинство людей будут искать события, которые происходят «сегодня», поэтому этот фильтр не будет получать такой большой трафик.
Мне нужно, чтобы эти адреса были правильными (потому что я геокодирую их потом), поэтому мне нужно проверить их перед отправкой формы и отобразить список «Вы имели в виду», если пользователь сделал там опечатку. Я не могу искать жизнь здесь. Я могу сделать живой поиск по ключевым словам. Имейте в виду, что пользователь также может сделать опечатку, и я хочу это уловить.
Есть ли умный способ спроектировать парсер ввода в этом случае, чтобы угадать, какой адрес должен быть, а какие ключевые слова?
OR
Есть ли способ фактически проанализировать его, когда пользователь вводит свой запрос? Может быть, я должен показать подсказки автозаполнения для ключевых слов, после ввода 3 первых символов, и если пользователь отказывается использовать их, то предположить, что что это часть адреса, который он вводит.
Что ты думаешь?