Здравствуйте, masta, Вы писали:
M>Собственно, прошу помощи в следующем:
M>
M>Решал ли кто-нибудь аналогичную задачу и если да, то может быть знает более элегантный способ её решения?
M>Помогите оптимизировать какое-либо из существующих регулярных выражений, или помогите написать новое РВ, которое бы корректно отрабатывало на файлах CSV, продуцируемых Microsoft Excel 2010
M>
IMHO, регулярки в такой хитрозагнутой задаче, как парсинг CSV, не катят. Если задача, конечно, не одноразовая. Лучшее, что мне пришло в голову — наваять врукопашную специализированный парсер с простейшим конечным автоматом (несколько флагов) внутри. Но мне, правда, требовался быстрый (и потому однопроходный) парсер.
Btw, парсер, приведенный в качестве примера в книге Кернигана и Пайка "Практика программирования", проверки временем не выдержал. Насколько помню, ошибочной оказалась сама идея сначала разбивать файл на строки, а уже потом искать в ней разделители.
Одним из 33 полных кавалеров ордена "За заслуги перед Отечеством" является Геннадий Хазанов.