/
katherinesiv
/
CSharp_Practice5
Обзор
Документация
Войти
/
katherinesiv
/
CSharp_Practice5
Код
Запросы
0
Задачи
Вики
Пакеты
0
Релизы
0
CI/CD
Аналитика
Безопасность
master
SentencesParserTask.cs
49 строк
1 KB
Сиваева Екатерина
create SentencesParserTask.cs
14 ноя 2025, 09:40
14 ноя 2025, 09:40
5fedf3b
Код
Авторство
О чём код?
using System; using System.Collections.Generic; using System.Linq; using System.Text; namespace TextAnalysis; static class SentencesParserTask { public static List<List<string>> ParseSentences(string text) { var sentencesList = new List<List<string>>(); char[] separatingSentences = { '.', '!', '?', ';', ':', '(', ')' }; var sentences = text.Split(separatingSentences, StringSplitOptions.RemoveEmptyEntries); foreach (var sentence in sentences) { var words = SplitToWords(sentence); if (words.Count > 0) sentencesList.Add(words); } return sentencesList; } private static List<string> SplitToWords(string sentence) { var words = new List<string>(); var currentWord = new StringBuilder(); foreach (char c in sentence) { if (char.IsLetter(c) || c == '\'') currentWord.Append(c); else { if (currentWord.Length > 0) { words.Add(currentWord.ToString().ToLower()); currentWord.Clear(); } } } if (currentWord.Length > 0) words.Add(currentWord.ToString().ToLower()); return words; } }