.NET 4.x Расставить скобки в строке - C#
Формулировка задачи:
Добрый вечер, граждане!
Такая проблемка, не могу сообразить как сделать....
Есть начальная строка
Собственно, что нужно: Там где есть оператор "or" нужно справа и слева взять подстроки и обнести их начало и конец скобками. Если после "or" допустим в левой части нет "and" выражений то дальше скобки не ставить
Вообще пока не могу понять, как сделать...
Заранее благодарю за помощь...
string test = @"name = 'Denis' and sex = 'man' or group = 'children and age = '12' or school_class = '7'
test = @"(name = 'Denis' and sex = 'man') or (group = 'children and age = '12') or school_class = '7'
Решение задачи: «.NET 4.x Расставить скобки в строке»
textual
Листинг программы
var orArgs = test.Split(new[] { "or", "OR", "Or", "oR" }, StringSplitOptions.RemoveEmptyEntries); var processed = string.Join(" or ", orArgs.Select(c => { var trim = c.Trim(); if (!trim.ToLower().Contains("and")) return trim; return !trim.StartsWith("(") && !trim.EndsWith(")") ? $"({trim})" : trim; }));
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д