Использование TParser в модуле Classes для анализа строки фильтра - PullRequest
0 голосов
/ 26 мая 2009

Я хочу разобрать строку фильтра, похожую на следующую:

((Field1 = 'red') and (field2 = 2)) or (Field3 between 1 and 5) or (field4 in ['up', 'down'])

Я бы хотел использовать TParser в модуле Classes, но, похоже, нет большого количества документации или примеров по нему.

1 Ответ

8 голосов
/ 26 мая 2009

TParser используется IDE для анализа файлов DFM в двоичном формате (ObjectTextToBinary). Насколько мне известно, он распознает только 5 токенов: (EOF, Symbol, String, Integer, Float). Он не достаточно общий, но построен для специального назначения. Вы должны были бы создать его подкласс и изменить его реализацию для ваших нужд. Мое мнение таково, что лучше просто написать свой собственный класс / автоматы для вашей конкретной цели. (Это даже не парсер, а лексический токенизер).

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...