Замена в регулярных выражениях в зависимости от группы - C#
Формулировка задачи:
Вчера целый вечер гуглил, а сегодня читал книгу, но так пока и не смог понять, как произвести замену в зависимости от группы, в которую попал символ. Как сделать, если, например, каждую маленькую гласную я хочу заменить на слово "гласная", а все большие - на "ГЛАСНАЯ"? Я написал выражение @"([aeiou])|([AEIOU])", а что дальше с ним делать - не знаю.
Решение задачи: «Замена в регулярных выражениях в зависимости от группы»
textual
Листинг программы
string str = "Some TexT";
var res = Regex.Replace(str, "(?<u>[A-Z])|(?<l>[a-z])", (m) =>
{
if (m.Groups["u"].Success)
return "UPPER";
else if (m.Groups["l"].Success)
return "lower";
return string.Empty;
});