Здравствуйте, Mr.Cat, Вы писали:
MC>MC>/* ......... " ..../*...*/.... " ....... */..........."
MC>
MC>MC>".........../*...*/...".....".....*/........"
MC>
MC>VS парсит точно так же.
Au1>>как ни парси регекспами, контрпример можно будет построить в общем случае.
MC>Если речь идет о подсветке и фолдинге редакторе, то 100% корректной работы не нужно. Достаточно покрытия определенного процента ситуаций, я считаю.
Возможно, пример не очень удачный. Давай попробую так:
MC>MC>/* ......... " ..../*...*/.... " ....... */..........."
MC>
MC>MC>".../* ......... " ..../*...*/.... " ....... */..........."
MC>
MC>MC>"...".../* ......... " ..../*...*/.... " ....... */..........."
MC>
MC>MC>"..."...".../* ......... " ..../*...*/.... " ....... */..........."
MC>
Если не трудно, приведи кусок местного кода, который различает эти ситуации. А именно, умеет понимать разницу между первыми тремя ситуациями. Может я не умею готовить регекспы, но с ходу не могу придумать, как различить эти ситуации. Зато умею это делать без регекспов — проходом по коду и запоминанием уровня вложенности и типа парной конструкции для каждого символа.