Вывести на экран слова, начинающиеся с гласной - C#
Формулировка задачи:
Здравствуйте! У меня было задание : написать программу, которая считывает английский текст из файла и выводит на экран слова, начинающиеся с гласных букв. Я составила, все хорошо , все идет. Но препод добавил к исходному тексту прямую речь. И поэтому не выводит слова , начинающиеся с гласной буквы после кавычек и тире. Вот код и скрины (не знаю понятно ли объяснила).
Если между кавычками и сломом стоит пробел, то все выводит, но препод поругал меня за пробелы. ЗАРАНЕЕ ОГРОМНОЕ СПАСИБО!
using System; using System.IO; using System.Text.RegularExpressions; static class Program { } namespace ConsoleApplication1 { class Program { static void Main(string[] args) { string text = File.ReadAllText(@"C:\Users\USER\Desktop\file.txt"); Console.WriteLine("Исходный текст:\\n{0}", text); string[] split = text.Split(" .,?!;:".ToCharArray(), StringSplitOptions.RemoveEmptyEntries); for (int i = 0; i < split.Length; i++) { if (Regex.IsMatch(split[i], @"^[aeioyu]", RegexOptions.IgnoreCase)) Console.WriteLine(split[i]); } Console.ReadLine(); } } }
Решение задачи: «Вывести на экран слова, начинающиеся с гласной»
textual
Листинг программы
string text = "SADgsdgsdg : \"agsdsdg 23451243\" !sdgadsa !as!oasf :-\"abc\""; Console.WriteLine("Исходный текст: {0}", text); const string vowels = "aeioyu"; string[] split = text.Split(new[]{'.',',','?','!',';',':','\"','-','+'}, StringSplitOptions.RemoveEmptyEntries); foreach (var word in split) { if (vowels.Any(x=> x==word[0])) Console.WriteLine(word); }
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д