Замена слова - C#

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

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

Здравствуйте! Имеется html-файл, в котором нужно заменить слово. Но проблема в следующем: я хочу заменить слово "РЭС" на слово "РТС", но вместе с ним, на "РТС" заменяется и часть слова "АРЭС", что мне не нужно. Как это лучше сделать? Код:
string str = string.Empty;
Encoding win1251 = Encoding.GetEncoding(1251);
    using (var reader = new StreamReader(@"C:\111.html", win1251))
    {
        str = reader.ReadToEnd();
    }
      str = str.Replace("РЭС", "РТС");
     using (var writer = new StreamWriter(@"C:\111.html", false, win1251))
    {
        writer.Write(str);
    }
    MessageBox.Show("Работа выполнена успешно!");

Решение задачи: «Замена слова»

textual
Листинг программы
string pathtofolder;
        List <string> Poiskdlyazameny=new List<string>() {@"\b(РЭС)\b",@"\b(РПдУ)\b"};
        List <string> Nazamenu=new List<string>(){"<span title="Радиоэлектронные системы "> РЭС  </span>",
            "<span title="Радиопередающее устройство "> РПдУ  </span>"};
            void Button1Click(object sender, EventArgs e)
        {
            string str = string.Empty;
    Encoding win1251 = Encoding.GetEncoding(1251);
       using (var reader = new StreamReader(pathtofolder, win1251))
    {
        str = reader.ReadToEnd();
    }
    for(int i=0;i<Nazamenu.Count;i++)
    {
     // В шаблоне используются 2 группы
     string pattern = Poiskdlyazameny[i];
        string replacement1 = Nazamenu[i];
                                        // вторая группа удаляется без замены
        str = Regex.Replace(str, pattern, replacement1);
    }
    using (var writer = new StreamWriter(pathtofolder, false, win1251))
    {
        writer.Write(str);
    }
     MessageBox.Show("Работа выполнена успешно!");
        }

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


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

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

5   голосов , оценка 3.8 из 5