MC>Ну если нужны только подсветка, фолдинг и прочие нехитрые вещи — тогда погляди, как это сделано в vim или notepad++. Думаю, в итоге там все сводится к прогону разными регулярными выражениями с разными приоритетами: сперва комментарии выявляются (и внутри них больше ничего не подсвечивается), потом строки и т.п.
Не прокатит по причине возможной вложенности одного в другое. Например:
/* ......... " ..../*...*/.... " ....... */..........."
и
".........../*...*/...".....".....*/........"
как ни парси регекспами, контрпример можно будет построить в общем случае.