07 апреля 2020

Операции связывания

    Операции сопоставления с образцом, используемые многими утилитами обработки текста в Unix, являются мощным средством и в языке Perl. Эти операции с регулярными выражениями включают поиск (m//), подстановку (s///) и замену символов (tr///) в строке. По умолчанию они работают со строкой, содержащейся в системной переменной $_. Операции =~ и \ ~ связывают выполнение сопоставления с образцом над строкой, содержащейся в переменной, представленной левым операндом этих операций:
$_ = "It's very interesting!";
s/very/not/; # Переменная $_ будет содержать строку
# "It's not interesting!"
$m = "my string";
$m =~ s/my/our/; i Переменная $m будет содержать строку
tt "our string"

      Возвращаемым значением операции =~ является Истина, если при выполнении соответствующей ей операции сопоставления с образцом в строке была найдена последовательность символов, определяемая регулярным выражением, и Ложь в противном случае. Операция ! ~ является логическим дополнением к операции =~. Следующие два выражения полностью эквивалентны:

$m !~ m/my/our/; not $m =~ m/my/our/;