Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > .NET Frameworks (точка нет фреймворки) > C# (си шарп)
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 09.04.2017, 12:29   #1
Manta4ka
Пользователь
 
Регистрация: 23.08.2016
Сообщений: 10
По умолчанию

Добрый день! Имеется задача: из файла с кодом на C# нужно удалить все комментарии, а чистый код записать в другой файл.
Для поиска и удаления комментариев вида // и /// я использую следующий код:
Код:
 static void Main(string[] args)
        {
            StreamReader inStream = new StreamReader(@"..\..\Input.txt");
           
            string text = inStream.ReadToEnd();

            string myRgx = @"/{2,3}(.*)(\n|\r)$";
            string text2 = Regex.Replace(text, myRgx, "", RegexOptions.Multiline);
            
            StreamWriter outStream = new StreamWriter(@"..\..\output.txt");
            outStream.WriteLine(text2);

        }
но проблема в том, что удаляются и соответствия из строк, а это понятное дело неправильно. Как исключить удаление внутри строк (элементов, окруженных кавычками)?

Решение:

Решила следующим образом ( может кому-то пригодится) :
Код:
 
            string myRgx = @"([\s;]|^)(/\*[\s\S]*?(\*/))";
            string myRgx2 = @"([\s?;])/{2,3}(.*)(\n|\r)$";
            
            text = Regex.Replace(text, myRgx, "$1");
            text = Regex.Replace(text, myRgx2, "\r", RegexOptions.Multiline);

Последний раз редактировалось Вадим Мошев; 12.05.2018 в 13:21.
Manta4ka вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Регулярные выражения antiwindows JavaScript, Ajax 9 24.09.2015 12:21
Регулярные выражения Dana_mon Помощь студентам 3 26.06.2015 21:55
Регулярные выражения sem_1989 JavaScript, Ajax 2 06.08.2011 21:45
Регулярные выражения Dima_D Общие вопросы Delphi 0 11.08.2010 21:16
Регулярные выражения adwaer Общие вопросы .NET 4 24.02.2010 17:38