35.3.1 Синтаксис регулярных выражений

Регулярные выражения имеют синтаксис, в котором несколько символов являются специальными конструкциями, а остальные — обычными. Обычный символ — это простое регулярное выражение, которое соответствует этому символу и ничему другому. Специальные символы — это «.», «*», «+», «?», «[», «^», «$» и «\»; в будущем не будут определены новые специальные символы. Символ «]» является специальным, если он завершает выражение в квадратных скобках (см. ниже). Символ «-» является специальным внутри выражения в квадратных скобках. «[:» и соответствующий ему «:]» заключают в скобки класс символов внутри выражения в квадратных скобках. Любой другой символ, появляющийся в регулярном выражении, является обычным, если перед ним не стоит «\».

Например, «f» не является специальным символом, поэтому он обычный, и следовательно, «f» — это регулярное выражение, которое соответствует строке «f» и ни одной другой строке. (Оно не соответствует строке «fg», но оно соответствует части этой строки.) Точно так же, «o» — это регулярное выражение, которое соответствует только «o».

Любые два регулярных выражения a и b могут быть конкатенированы. Результатом является регулярное выражение, которое соответствует строке, если a соответствует некоторой части начала этой строки, а b соответствует остальной части строки.

В качестве простого примера мы можем конкатенировать регулярные выражения «f» и «o», чтобы получить регулярное выражение «fo», которое соответствует только строке «fo». Все еще тривиально. Чтобы сделать что-то более мощное, вам нужно использовать одну из специальных конструкций регулярных выражений.