Проверьте текст на правильность расстановки знаков препинания - 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();
- }
- }
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д