Я работаю над приложением Django, где база данных в настоящее время ищется с использованием регулярных выражений. Возвращенные результаты кажутся правильными, за исключением случаев, когда я ищу с отрицательным прогнозом (я хотел бы иметь возможность исключить некоторые результаты путем фильтрации с помощью регулярного выражения).
Например, в базе данных есть столбец с множеством записей «Нет», и я хотел бы исключить эти результаты при поиске в базе данных. Я попробовал регулярное выражение ^(?!None).*$
в онлайн-тестере регулярных выражений, и оно прошло мои тесты (строки None не совпадают, каждая другая строка). Однако, когда результаты возвращаются с помощью Django, строки «Нет» не исключаются. Бэкэнд для БД - SQLite, который согласно здесь должен позволять все, что разрешено, но я не добился успеха. Вот вызов filter()
, который я использую для регулярного выражения:
previousFilters.filter(models.Q(myColumn__regex = r'('+input_expression+')'))
Допускает ли Django исключение результатов через отрицательный взгляд в регулярное выражение?