Якоря

Если шаблон не совпадает в начале строки, по умолчанию ядро регулярных выражений Perl «перемещает» его по строке, пытаясь найти совпадение в другом месте. Однако выражение может содержать «якорные» символы, привязывающие шаблон к определенной позиции строки. Якорь ^1 (циркумфлекс, «крышка») обозначает начало строки, а знак $ совпадает только в конце строки2. Таким образом, шаблон /^fred/ совпадет только от начала строки; в строке manfred mann совпадение найдено не будет. А шаблон /rock$/ совпадает только c символами rock в конце строки; в строке knute rockne совпадения не будет.

В некоторых ситуациях используются оба якоря; они гарантируют, что шаблон займет всю строку. Типичный пример – шаблон /^\s*$/, совпадающий с пустой строкой. Впрочем, эта пустая строка может содержать пропуски (например, табуляции и пробелы), невидимые для нас с вами. Все строки, состоящие из таких символов, внешне не отличимы друг от друга, поэтому шаблон рассматривает их как эквивалентные. Без якорей он бы также совпадал и в непустых строках.
Теги:
регулярные выражения
Похожие новости:
Добавлено: 20 Июля 2018 19:20:21 Добавил: Андрей Ковальчук Нравится 0
Добавить
Комментарии:
Нету комментариев для вывода...