Разбиение текста на абзацы, предложения и слова - C#
Формулировка задачи:
привет всем, нужно разбить текст с файла на абзаци и записать абзаци в List, потом с этого List разбить абзаци на предложения и записать их в отдельный List, потом по такой схеме разбить строки на слова и записать это в новый файл
Решение задачи: «Разбиение текста на абзацы, предложения и слова»
textual
Листинг программы
using System; using System.Collections.Generic; using System.Linq; namespace Abzac { class Program { static void Main(string[] args) { string text = @"После появления в мотеле Моники обязанности Тре и Терри свелись к самому малому – необходимости изображать человеческий интерфейс с постояльцами, которых приходилось принимать и селить в номера. Принимать гостей приходилось им лично, чтобы избежать неприятных моментов, которые могли возникнуть в связи с оригинальным внешним видом и запахом, исходящим от Моники. Постояльцы, в подавляющем большинстве туристы, как правило, средний класс и прибывшие со Среднего Запада, приезжали в Санта-Круз, соблазнившись низкими ценами, и обычно бывали в первые дни потрясены большим количеством местных молди. В глубинке, как правило, молди не селились, потому что люди там ненавидели их особенно люто – большинство обитателей Среднего Запада были «наследниками». Главное слово в жаргоне «наследников», «поджаривать», означало сжигание молди в луже крепкого виски, и впервые это слово родилось в Айове. «С трюфельным соусом», иногда добавляли некоторые «наследники», имея в виду обгорающие шарики камотного гриба, прожаривающегося в корчащемся пластике пожираемого пламенем молди и взрывающемся, выбрасывая в воздух психоделические облачка почерневших спор. Таким образом, с некоторых пор делом Тре и Терри стало первыми принять постояльцев и быстренько убедить их, что свободный город Санта-Круз является отличным местом, не таящим в себе никакой угрозы, веселым городком, полным молоденьких студенток, молди, рабочих с окрестных ферм, серферов и бездомных торчков. Хотя, конечно, цены говорили сами за себя – жизнь была дешевой, и в городке было чем поразвлечься."; List<string> paragraphs = text.Split(new string[] { "\n\r" }, StringSplitOptions.RemoveEmptyEntries).ToList(); List<string> sentences = new List<string>(); List<string> words = new List<string>(); foreach (string paragraph in paragraphs) { sentences.AddRange(paragraph.Split(new string[] { "\n" }, StringSplitOptions.RemoveEmptyEntries)); foreach (string sentence in sentences) { words.AddRange(sentence.Split((new char[] { ' ', ',', '.', '-' })).Where(p=>p.Length > 0)); foreach (string word in words) { Console.WriteLine(word); } } } Console.ReadKey(); } } }
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д