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

Просмотр назад

(?<=...) требует, чтобы слева был указанный фрагмент. (?<!...) запрещает его. Просмотр вперёд описан в lookahead. Фиксированная ширина слева упрощает шаблон.

Синтаксис

Regex.IsMatch(text, @"(?<=a)b"); Regex.IsMatch(text, @"(?<!a)b");

Пример

Давайте найти "b" после "a":

using System; using System.Text.RegularExpressions; class Program { static void Main() { var m = Regex.Match("abcde", @"(?<=a)b"); Console.WriteLine(m.Value); } }

Результат выполнения кода:

"b"

Пример

Давайте запретить "a" слева через (?<!a):

using System; using System.Text.RegularExpressions; class Program { static void Main() { var m = Regex.Match("xbcde", @"(?<!a)b"); Console.WriteLine(m.Value); } }

Результат выполнения кода:

"b"

Пример

Давайте проверить цифру после буквы:

using System; using System.Text.RegularExpressions; class Program { static void Main() { var m = Regex.Match("a1b2", @"(?<=[a-z])\d"); Console.WriteLine(m.Value); } }

Результат выполнения кода:

"1"

Смотрите также

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