Инвертирование наборов символов в C#
Шляпка в начале квадратных скобок инвертирует
набор. Если команда [ab] ищет букву
"'a'" или "'b'", то команда
[^ab] ищет любой символ, кроме
"'a'" и "'b'".
В данном примере шаблон поиска выглядит
так: буква "'x'", затем НЕ буква
"'a'", не "'b'" и не "'c'",
потом буква "'z'":
using System.Text.RegularExpressions;
string txt = "xaz xbz xcz xez";
string res = Regex.Replace(txt, @"x[^abc]z", "!");
Console.WriteLine(res);
В данном примере шаблон поиска выглядит
так: буква "'x'", затем НЕ маленькая
латинская буква, потом буква "'z'":
using System.Text.RegularExpressions;
string txt = "xaz xbz x1z xCz";
string res = Regex.Replace(txt, @"x[^a-z]z", "!");
Console.WriteLine(res);
Напишите регулярку, которая найдет строки
по шаблону: цифра 1, затем символ
не "'e'" и не "'x'", цифра
2.
Напишите регулярку, которая найдет строки по шаблону: буква "'x'", затем НЕ цифра от 2 до 7, буква "'z'".
Напишите регулярку, которая найдет строки по шаблону: буква "'x'", затем НЕ большая латинская буква от 1 и более раз, буква "'z'".
Напишите регулярку, которая найдет строки по шаблону: буква "'x'", затем один или более символов, которые не являются латинской буквой и не являются цифрой от 1 до 5, потом буква "'z'".