И опять Здравствуйте!

Есть вопрос, про парсинг.
Дан текст и надо проверить на кол-во открывающихся/закрывающихся скобок, и если они не совпадают, то выдать ошибку. Притом:
если скобка (любая) записана в комментарии, то ее считать не надо и
если скобка записана в двойных кавычках "...", то ее тоже считать не надо.
Комментарии могут быть такие:
1. // это одно строчный комментарий (как в делфи)
2. /* это много строчный
комментарий (как в С)
*/
Скобки могут быть такие:
{ }
[ ]
( )
< >
Посылать в гугл не надо, только оттуда... Поэтому ссылки типа "
http://www.google.com.ua/search?sour...BB%D1%84%D0%B8 " не подходят.
ЗЫ Обычные функции (delete, pos, posEx) тут, как я думаю, не совсем подойдут, точнее подойдут, но ну уж очень надо сильно много проверок.
Есть идеи?