У меня есть веб-приложение MVC.net со страницей поиска.Я хотел бы, чтобы пользователь мог искать записи по заданному году, например, 1979. Однако я знаю, что некоторые опытные пользователи захотят искать диапазоны дат и т. Д. Вместо того, чтобы перепроектировать форму поиска, я подумал, что мог бы добавить некоторые дополнительные функции, позволяяпользователи, чтобы ввести:
- 1979 просто записи за 1979
- 1979 + все годы с 1979 года вперед
- 1979- все годы с 1979 года назад
- 1979-1985 все годы между 1979 и 1980 годами
Я могу обработать критерии поиска, номне было интересно, каков наилучший способ отработать последовательность, в которую они вступили, какое действие они хотят сделать?Обратите внимание, что они также могут оставить строку поиска пустой, так как на странице есть другие критерии.
Я думал о некоторых тестах регулярных выражений, но какими будут правильные шаблоны регулярных выражений?Я пытался создать некоторые, но я не могу понять это правильно.
if (Query == Regex for single year)
{
SQL = SELECT WHERE Year = Query
}
else if (Query = regex for greater than year) {
SQL = SELECT WHERE Year >= Query
}
else if (Query = regex for less than year) {
SQL = SELECT WHERE Year <= Query
}
else if (query = regex for date range) {
SQL = SELECT WHERE Year >= Query Part A AND Year <= Query Part B
}
else { ignore }