Строка: Преобразовать последовательность, удалив из групп подряд идущих цифр, все цифры начиная со 3-ей - C#

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

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

Даны символыs1,s2, … Известно, что символs1 отличен от пробела и что средиs2,s3, … имеется хотя бы один пробел. Рассматриваютсяs1, …,sn – символы, предшествующие первому пробелу (n заранее неизвестно). Преобразовать последовательностьs1, …,sn: удалив из каждой группы идущих подряд цифр, в которой более двух цифр и которой предшествует точка, все цифры, начиная с третьей (например, ab + 0.1973− 1.1 преобразуется вab + 0.19− 1.1); помогите на c #

Решение задачи: «Строка: Преобразовать последовательность, удалив из групп подряд идущих цифр, все цифры начиная со 3-ей»

textual
Листинг программы
using System.Text.RegularExpressions;
 
static void Main(string[] args)
        {
            string str = "ab + 0.1973 - 1.1 ";
            string newline = null;
            foreach(string line in str.Split(' '))
            {
                if(new Regex(@"\d+.\d+").IsMatch(line))
                {
                    if(line.Split('.')[1].Length > 2)
                    {
                        newline += line.Remove(line.IndexOf('.') + 3) + " ";
                    }
                    else
                    {
                        newline += line + " ";
                    }
                }
                else
                {
                    newline += line + " ";
                }
                
            }
            Console.WriteLine(newline);
            Console.ReadLine();
        }

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


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

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

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