Perl / 6. В мире регулярных выражений

Perl обладает многочисленными возможностями, выделяющими его на фоне других языков. Среди них одно из важнейших мест занимает мощная поддержка регулярных выражений – быстрого, гибкого и надежного механизма работы со строками. Но за широту возможностей приходится расплачиваться. Регулярные выражения фактически представляют собой мини-программы, написанные на отдельном языке, встроенном в Perl. (Да, вам придется изучить еще один язык программирования! К счастью, он несложен.) В этой главе мы посетим мир регулярных выражений, в котором (отчасти) забудем о мире Perl. А в следующей главе вы увидите, как этот мир связан с миром Perl.
Статьи раздела '6. В мире регулярных выражений':
Альтернатива
Вертикальная черта (|) означает, что совпасть может либо выражение в левой части, либо выражение в правой части. Иначе говоря, если часть шаблона слева от вертикальной черты не совпадает, то в совпадение может быть включена часть ...
Группировка в шаблонах
Как и в математических операциях, круглые скобки () используются для группировки элементов выражения. Таким образом, круглые скобки также являются метасимволами. Например, шаблон /fred+/ совпадает с такими строками, как fredddddd,...
Инвертированные сокращения
В некоторых ситуациях бывает нужно придать любому из этих трех сокращений прямо противоположный смысл. Иначе говоря, вы хотитеиспользовать [^\d], [^\w] или [^\s], подразумевая символ, не являющийся цифрой, символом слова или пропу...
О метасимволах
Конечно, если бы шаблоны могли совпадать только со строковыми литералами, пользы от них было бы немного. Специальные символы, называемые метасимволами, имеют особый смысл в регулярных выражениях. Например, точка (.) обозначает оди...
Простые квантификаторы
Часто возникает необходимость в повторении некоторых частей шаблона. Звездочка (*) означает нуль или более повторений предшествующего элемента. Таким образом, шаблон /fred\t*barney/ совпадет при любом количестве символов табуляции...
Простые регулярные выражения
Чтобы проверить, совпадает ли регулярное выражение (шаблон) в содержимом $_, просто заключите шаблон между парой символов /, как в следующем фрагменте: $_ = "yabba dabba doo"; if (/abba/) { print "It matched!\n"; } Выраже...
Символьные классы
Символьный класс, перечень возможных символов в квадратных скобках ([]), совпадает с одним из символов, входящих в класс. Он совпадает только с одним символом, но это может быть любой из перечисленных символов. Например, символьны...
Сокращенная запись символьных классов
Некоторые символьные классы встречаются так часто, что для них были созданы \ специальные сокращения. Например, символьный класс для обозначения любой цифры [0-9] может быть записан в виде \d. Таким образом, приведенный ранее шабл...
Что такое регулярные выражения?
Регулярное выражение представляет собой шаблон, который либо совпадает, либо не совпадает в заданной строке. Другими словами, существует бесконечное множество возможных текстовых строк; заданный шаблон делит это бесконечное множес...

Страницы: 1