@ruJumi

Как распарсить запрос в Python?

Здравствуйте!
Есть приложение резервного копирования в котором список хостов на РК формируется подобными запросами:
VmFolder equal 'Name1' AND (VmName equal 'vm1' OR VmName contain '_tst_') AND NOT VmName StartWith 'old_'

И база данных в которой список всех объектов виртуализации, нужно распарсить запрос для получения данных из БД которые попадают в запрос.
Давно сделал проверку через if (много if), но сейчас понимаю что решение мягко говоря неэстетичное, и бывают сложности когда много разных условий идет.
Подскажите направлению куда можно копнуть для изучения методов разбора подобных запросов?
  • Вопрос задан
  • 80 просмотров
Решения вопроса 1
Vindicar
@Vindicar
RTFM!
Ну я бы описал каждое составное условие как коллекцию "имя поля - условие, применяемое на поле".
Но возможно, лучше как-то кардинально это решитью. Например, навесить теги на обрабатываемые объекты, и делать поиск по тегам.
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы