Операторы ограничители строк
Операторы ограничители строк.
Обычно ограничителями строк мы считаем литералы, но в Perl это операторы выполняющие разного рода интерполяцию и поиск по шаблону. Вы можете сами задавать удобные для вас ограничители. В следующей таблице приведен полный перечень вариантов. Фигурные скобки '{}' обозначают любой символ, используемый для ограничителя. В случае использования скобок (круглых '()', квадратных '[]', фигурных '{}', угловых '<>') в начале ставится открывающаяся скобка, а в конце закрывающая.
'' | q{} | Literal | нет |
"" | qq{} | Литерал | да |
`` | qx{} | Команда | да |
qw{} | Список слов | нет | |
// | m{} | Шаблон | да |
s{}{} | Подстановка | да | |
tr{}{} | Трансляция | нет |
В строках допускающих интерполяцию имена переменных, начинающиеся с символов '$' или '@' - интерполируются, т.е. в строку вставляется значение строки или массива. Данные последовательности символов имеют специальное значение:
\t | символ табуляции |
\n | символ новой строки |
\r | возврат |
\f | перевод формата |
\v | вертикальная табуляция |
\b | backspace (забой) |
\a | звонок |
\e | escape |
\034 | восьмеричный символ |
\x1a | шестнадцатеричный символ |
\c[ | символ управления |
\l | нижний регистр следующего символа |
\u | верхний регистр следующего символа |
\L | нижний регистр для всех символов до \E |
\U | верхний регистр для всех символов до \E |
\E | ограничитель смены регистра |
\Q | отмена действия метасимволов до \E |
Шаблоны интерполируются как регулярные выражения. Это выполняется вторым проходом после интерполяции переменных, поэтому в шаблоны можно вставлять переменные. Для отмены интерполяции используйте '\Q'. Если вы применяете вложенные ограничители, то внутренние ограничители работать не будут.