Нужно в нем посчитать количество предложений, количество слов в каждом предложении, сколько определенных букв - C#

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

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

Дан текст вводится в textBox. Нужно в нем посчитать количество предложений, количество слов в каждом предложении, сколько определенных букв в каждом предложении. Как посчитать кол-во слов и букв в каждом предложении. Заранее спасибо
Листинг программы
  1. int i_числоЭлементовМассива = 0;
  2. string s_входнаяСтрока2 = textBox_Ввод.Text;
  3. string[] s_массивПредложений = s_входнаяСтрока2.Split('.', '!', '?');
  4. i_числоЭлементовМассива = s_массивПредложений.Length;

Решение задачи: «Нужно в нем посчитать количество предложений, количество слов в каждом предложении, сколько определенных букв»

textual
Листинг программы
  1.             string text = "Мама мыла раму... Second sentence!? Третье предложение??? Yes.";
  2.  
  3.  
  4.             //Разбить на предложения
  5.             string[] sentences = Regex.Split(text, @"(?<=[\.!\?])\s+", RegexOptions.IgnoreCase);
  6.  
  7.             foreach (string sentence in sentences)
  8.             {
  9.                 Console.WriteLine(sentence);
  10.             }
  11.             Console.WriteLine();
  12.  
  13.             //Число слов
  14.             var words = sentences.Select(input => Regex.Matches(input, @"\w+")
  15.                     .Cast<Match>()
  16.                     .Select(x=>x.Value).Count()).ToArray();
  17.  
  18.            
  19.            
  20.             for (var i = 0; i < sentences.Length; i++)
  21.             {
  22.                 Console.WriteLine(sentences[i]+" - "+words[i]+" слова");
  23.             }
  24.  
  25.            
  26.             Console.WriteLine();
  27.  
  28.             //Буквы в предложениях
  29.             foreach (var sentence in sentences)
  30.             {
  31.                 var dit = sentence.Where(x => Char.IsLetter(x)).Distinct().ToArray();
  32.                 var s = dit.Select(x => new { Letter = x, Count = sentence.Count(y => y == x) }).ToArray();
  33.  
  34.                 Console.WriteLine("Буквы для: " + sentence);
  35.                 Console.WriteLine(String.Join("\r\n", s.Select(x=> x.Letter+" "+x.Count)));
  36.                 Console.WriteLine();
  37.  
  38.             }
  39.             Console.ReadKey();

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


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

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

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

Нужна аналогичная работа?

Оформи быстрый заказ и узнай стоимость

Бесплатно
Оформите заказ и авторы начнут откликаться уже через 10 минут
Похожие ответы