Создаем портфолио за 1 месяц
К концу месяца: 4 классных проекта в вашем портфолио! Стоимость: 100$. Подробности...
⊗csSpRgCB 5 of 509 menu
◀ ▶

Фигурные скобки в регулярках C#

Операторы "'+'", "'*'", "'?'" хороши, однако, с их помощью нельзя указать конкретное число повторений. В этом случае вам на помощь придет оператор {}.

Работает он следующим образом: {5} - пять повторений, {2,5} - повторяется от двух до пяти (оба включительно), {2,} - повторяется два и более раз. Посмотрите примеры:

В данном примере шаблон поиска выглядит так: буква "'x'", буква "'a'" один или два раза, буква "'x'":

using System.Text.RegularExpressions; string txt = "xx xax xaax xaaax"; string res = Regex.Replace(txt, @"xa{1,2}x", "!"); Console.WriteLine(res);

В данном примере шаблон поиска выглядит так: буква "'x'", буква "'a'" два раза и более, буква "'x'":

using System.Text.RegularExpressions; string txt = "xx xax xaax xaaax"; string res = Regex.Replace(txt, @"xa{2,}x", "!"); Console.WriteLine(res);

В данном примере шаблон поиска выглядит так: буква "'x'", буква "'a'" три раза, буква "'x'":

using System.Text.RegularExpressions; string txt = "xx xax xaax xaaax"; string res = Regex.Replace(txt, @"xa{3}x", "!"); Console.WriteLine(res);

В данном примере шаблон поиска выглядит так: буква "'a'" десять раз:

using System.Text.RegularExpressions; string txt = "aaa aaaaaaaaaa aaa"; string res = Regex.Replace(txt, @"a{10}", "!"); Console.WriteLine(res);

В данном примере есть такой шаблон: буква "'x'", буква "'a'" три раза и меньше, буква "'x'". Нижнюю границу в C# пишут явно: ноль означает, что повтора может не быть:

using System.Text.RegularExpressions; string txt = "xx xax xaax xaaax"; string res = Regex.Replace(txt, @"xa{0,3}x", "!"); Console.WriteLine(res);

Дана строка:

string txt = "aa aba abba abbba abbbba abbbbba";

Напишите регулярку, которая найдет строки "'abba'", "'abbba'", "'abbbba'" и только их.

Дана строка:

string txt = "aa aba abba abbba abbbba abbbbba";

Напишите регулярку, которая найдет строки вида "'aba'", в которых "'b'" встречается не больше 3 раз.

Дана строка:

string txt = "aa aba abba abbba abbbba abbbbba";

Напишите регулярку, которая найдет строки вида "'aba'", в которых "'b'" встречается не меньше 4 раз.

← →
↑
Мы используем cookie для работы сайта, аналитики и персонализации. Обработка данных происходит согласно Политике конфиденциальности.
принять все настроить отклонить