Регулярные выражения Квадратные скобки -- что они означают

Квадратные скобки объединяют группу символов -каждый из которых является вариантом (то есть это не последовательность, а именно группа) -
например выражение

[abc]{3,}

означает что мы хотим найти строку где три раза и более встречается последовательность, к которую входят какие-то из букв a и/или b и/или c
то есть нам подойдут последовательности вроде:

abc
aaa
aab
aaabcc

и т.д.

melisa's picture

Почему здесь в { } указан диапазон {3, 0}, а не {0, 3} ? Это значит, что не важно, в какой последовательности написаны цифры? Всё равно количество повторений будет от меньшего до большего значения?

vedro-compota's picture

судя по всему в примере ошибка и для условие "3 и более раз" надо писать так:

{3,}

Исправьте, если это так.

_____________
матфак вгу и остальная классика =)

melisa's picture

Если оставить

[abc]{3,0}

возникает ошибка:

Warning: preg_replace(): Compilation failed: numbers out of order in {} quantifier at offset 9 in C:\OpenServer\...

Надо писать так:

[abc]{3,}

(исправлено)

vedro-compota's picture

спасибо) вы правы)

_____________
матфак вгу и остальная классика =)