Замена слов с большой буквы на символы - C#
Формулировка задачи:
Здравствуйте. Нужно в строке типа "Read the sentence in their own Names changed to *" заменит все заглавные слова на символы "*", чтобы получилось "**** the sentence in their own ***** changed to * ". В голову пришла идея выловить все слова которые начинаються с заглавной буквы и удалить их, потом добавить *, но что-то не получаеться реализовать.
Решение задачи: «Замена слов с большой буквы на символы»
textual
Листинг программы
using System; namespace for_test { class Program { static void Main(string[] args) { string str = "Read the sentence in their own Names changed to *"; //Переводим строку в массив string[] splt = str.Split(new char[] { ' ' }, StringSplitOptions.RemoveEmptyEntries); int j = 0; int countChar = 0; string result = String.Empty; //Цикл элементов массива for (int i = 0; i < splt.Length; i++) { int count = 0; //Цикл символов элемента массива foreach (char Char in splt[i]) { ++count; //Если первый символ элемента массива Верхнего регистра if (Char.IsUpper(Char) && count == 1) { //Кол-во букв в элементе массива countChar = splt[i].Length; j++; break; } else break; } //Если текущий элемент массива начинается с буквы в верхнем регистре if (j != 0) { //Пробел if(i != 0) result += " "; for (int g = 0; g < countChar; g++) { //рисуем звёздочки,сколько сиволом в элементе result += "*"; } } else result += " " + splt[i];//Иначе текущий элементе начивается не с символа верхнего регистра, конкатенуем значение элемента массива в строку результат j = 0; } Console.WriteLine(result); Console.ReadKey(); } } }
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д