Javascript-форум (https://javascript.ru/forum/)
-   Общие вопросы Javascript (https://javascript.ru/forum/misc/)
-   -   регулярка для парсинга SQL запроса (https://javascript.ru/forum/misc/23861-regulyarka-dlya-parsinga-sql-zaprosa.html)

Yurik 09.12.2011 02:51

регулярка для парсинга SQL запроса
 
задача распарсить SQL запрос (мне это надо в PHP сделать, но в принципе регулярка и в РНР и в javascript одинакова)

мне нужно получить выбираемые поля, таблицы и условия

все на что хватило фантазии
^SELECT (.+?) FROM (.+?)(?: WHERE (.+?))?(?: ORDER BY (.+?))?(?: limit .*)?


все бы хорошо, отлично все работает с однотабличным запросом

но когда таблиц несколько мне уже не подходит результат вроде

table1 t1 join tabl2 t2 on (t1.field=t2.field)

мне и его нужно распарсить чтоб получить таблицы, синонимы таблиц и поля из связи

может не совсем понятно выражаюсь, но к часу ночи голова уже не совсем варит....

devote 09.12.2011 03:27

запросы могут быть с любой вложенностью, с любой сложность. и т.д. Хороший парсер есть в PHPMyAdmin копайте в нем, можно вырезать из него.

Yurik 09.12.2011 15:08

спасибо, в РНРадмине действительно парсер чудесный


Часовой пояс GMT +3, время: 13:25.