Проверьте текст на правильность расстановки знаков препинания - C#
Формулировка задачи:
По правилу расстановки знаков препинания перед каждым знаком препинания пробел отсутствует, а после него обязательно стоит пробел. Учитывая данное правило, проверьте текст на правильность расстановки знаков препинания и, если необходимо, внесите в текст изменения.
Решение задачи: «Проверьте текст на правильность расстановки знаков препинания»
textual
Листинг программы
sealed class TextParser { private readonly HashSet<char> punctMarks = new HashSet<char>(); private const char space = ' '; public void AddPunctuationMarks(params char[] punctMarks) { punctMarks.ToList().ForEach(m => this.punctMarks.Add(m)); } public string ProcText(string srcText) { StringBuilder sb = new StringBuilder(); foreach(char ch in srcText.ToCharArray()) { if (punctMarks.Contains(ch)) while (sb.Length > 0 && sb[sb.Length - 1] == space) sb.Length--; else if (ch != space && sb.Length > 0 && punctMarks.Contains(sb[sb.Length - 1])) sb.Append(space); sb.Append(ch); } return sb.ToString(); } }
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д