Следите за новинками
в нашем Telegram канале. Жми, чтобы подписаться:)
⊗dtSpRgCB 38 of 224 menu
◀ ▶

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

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

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

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

var txt = "xx xax xaax xaaax"; var res = txt.replaceAll(RegExp(r'xa{1,2}x'), "!"); print(res);

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

'xx ! ! xaaax';

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

var txt = "xx xax xaax xaaax"; var res = txt.replaceAll(RegExp(r'xa{2,}x'), "!"); print(res);

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

'xx xax ! !';

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

var txt = "xx xax xaax xaaax"; var res = txt.replaceAll(RegExp(r'xa{3}x'), "!"); print(res);

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

'xx xax xaax !';

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

var txt = "aaa aaaaaaaaaa aaa"; var res = txt.replaceAll(RegExp(r'a{10}'), "!"); print(res);

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

'aaa ! aaa';

В данном примере шаблон такой: буква 'x', буква 'a' от нуля до трех раз, буква 'x'. Нижнюю границу пишут нулем:

var txt = "xx xax xaax xaaax"; var res = txt.replaceAll(RegExp(r'xa{0,3}x'), "!"); print(res);

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

'! ! ! !';

Дана строка:

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

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

Дана строка:

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

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

Дана строка:

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

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

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