Re[8]: Регулярное выражение для CS
От: Au1  
Дата: 25.11.09 12:41
Оценка:
Здравствуйте, 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>


Если не трудно, приведи кусок местного кода, который различает эти ситуации. А именно, умеет понимать разницу между первыми тремя ситуациями. Может я не умею готовить регекспы, но с ходу не могу придумать, как различить эти ситуации. Зато умею это делать без регекспов — проходом по коду и запоминанием уровня вложенности и типа парной конструкции для каждого символа.
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.