Документация для версии POS-Интеллект 5.3. Документация на другие версии также доступна.

Предыдущая страница Квантификаторы  Спецсимволы Следующая страница

В символьный класс может входить любой литерал, а так же интервалы литералов. Для описания интервалов литералов используется символ '-', который ставится между первым символом интервала и последним. Примеры задания различных интервалов в одном символьном классе: [1-5] - числа в диапазоне от 1 до 5, [a-f] - буквы латинского алфавита от a до f, [a-fq-x] - буквы латинского алфавита от a до f и от q до x, в последнем символьном классе используются два диапазона.

Если в определенном месте строки могут стоять символы: либо a, либо g, либо 7, либо 4, то символьный класс будет иметь вид: [ag47]

В символьном классе можно перечислять допустимые в условии поиска - литералы. Перечисление литералов можно совмещать с указанием интервалов: [14a-kz] - это означает, что символ в строке может совпадать с 1, 4, буквами латинского алфавита c a по k, а так же с буквой z. Естественно литералами могут быть не только буквы и цифры, а так же знаки препинания, математические знаки, например ',' (запятая), '!' (восклицательный знак), '+' (плюс). Можно использовать и '-' (минус), даже если он же используется и для описания интервалов. Если поставить минус между a и z, то это будет интервал, но если - сразу же после открытой квадратной скобки, то это будет минус. Пример: [-,a-z] - означает, что в символьный класс входят минус, запятая, а так же буквы латинского алфавита от a до z.

Для того, чтобы написать символьный класс, в который входят все символы кроме заданных, например, все кроме a, b, c, существует специальный спецсимвол отрицания: ^ (крышка). Нужно написать: [^abc] - все символы (не буквы, а именно символы) кроме букв латинского алфавита a, b, c.

Потренироваться в написании шаблонов можно здесь : http://www.pcre.ru/eval/.

  • No labels