Spec-Zone.ru › Elisp

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

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

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

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

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

  • Специальные символы в регулярных выражениях
  • Классы символов
  • Конструкции с обратной косой чертой в регулярных выражениях

Copyright © 1990-1996, 1998-2026 Free Software Foundation, Inc.
Licensed under the GNU GPL license.
https://www.gnu.org/software/emacs/manual/html_node/elisp/Syntax-of-Regexps.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API