Вывести даты другим цветом с помощью регулярных выражений - C#

Узнай цену своей работы

Формулировка задачи:

Разработать приложение, позволяющие обрабатывать текст с использованием регулярных выражений. Исходный текст храниться в файле. Текст после преобразования и исходный текст вывести в консоль. В произвольном тексте все даты (в формате DD.MM.YYYY и MM/DD/YYYY) вывести красным цветом. За ранее спасибо.

Решение задачи: «Вывести даты другим цветом с помощью регулярных выражений»

textual
Листинг программы
using System;
using System.Text.RegularExpressions;
using System.Windows.Forms;
using System.IO;
 
namespace ConsoleApplication1
{
    class MainClass
    {
        [STAThread]
        public static void Main(string[] args)
        {
            const string pattern = "[0-3][1-9][/][0-1][1-9][/]\\d{4}|[0-3][1-9][.][0-1][1-9][.]\\d{4}";
            OpenFileDialog fileDialog = new OpenFileDialog();
            fileDialog.Filter = "txt files (*.txt)|*.txt";
 
            if (fileDialog.ShowDialog() == DialogResult.OK)
            {
                string text = File.ReadAllText(fileDialog.FileName);
                MatchCollection match = Regex.Matches(text, pattern, RegexOptions.IgnoreCase);
                Console.WriteLine($"Исходная строка:\n\n{text}\n\nВидоизмененная строка:\n\n");
 
                for (int i = 0; i < text.Length; i++)
                {
                    foreach (Match m in match)
                    {
                        if ((i >= m.Index) && (i < m.Index + m.Length))
                        {
                            Console.ForegroundColor = ConsoleColor.Red;
                            break;
                        }
                        else
                        {
                            Console.ForegroundColor = ConsoleColor.Gray;
                        }
                    }
                    Console.Write(text[i]);
                }
            }
            Console.ReadKey();
 
        }
 
    }
}

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

9   голосов , оценка 3.778 из 5
Похожие ответы