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

Команда или в регулярках C#

Команда "'|'" - более мощный вариант "'или'", чем набор в квадратных скобках. Она позволяет разделить регулярку на несколько частей. При этом искомое может попасть либо под одну часть регулярки, либо под другую. Посмотрим на примерах.

В данном примере шаблон поиска такой: три буквы "'a'" или три буквы "'b'":

using System.Text.RegularExpressions; string txt = "aaa bbb abb"; string res = Regex.Replace(txt, @"a{3}|b{3}", "!"); Console.WriteLine(res);

В данном примере шаблон поиска такой: три буквы "'a'" или от 1 и более букв "'b'":

using System.Text.RegularExpressions; string txt = "aaa bbb bbbb bbbbb axx"; string res = Regex.Replace(txt, @"a{3}|b+", "!"); Console.WriteLine(res);

В данном примере шаблон поиска такой: одна или более буквы или три цифры:

using System.Text.RegularExpressions; string txt = "a ab abc 1 12 123"; string res = Regex.Replace(txt, @"[a-z]+|\d{3}", "!"); Console.WriteLine(res);

Вертикальная черта может делить регулярку не на две части, а на любое количество частей:

using System.Text.RegularExpressions; string txt = "aaa bbb ccc ddd"; string res = Regex.Replace(txt, @"a+|b+|c+", "!"); Console.WriteLine(res);

Если вертикальная черта стоит внутри круглых скобок, то "'или'" работает только внутри этих скобок.

Для примера давайте найдем строки по следующему шаблону: в начале стоит или "'a'", или "'b'" один или более раз, а потом две буквы "'x'":

using System.Text.RegularExpressions; string txt = "axx bxx bbxx exx"; string res = Regex.Replace(txt, @"(a|b+)xx", "!"); Console.WriteLine(res);

Дана строка:

string txt = "aeeea aeea aea axa axxa axxxa";

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

Дана строка:

string txt = "aeeea aeea aea axa axxa axxxa";

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

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