Основано на ответе SO " my ($ export = $ doc) = ~ s {.odt} {. Pdf}; ", почему этот Perl-скрипт вызывает ошибку компиляции?
$ cat so.pl #!/usr/bin/perl my $doc ="x.odt"; my ($export = $doc) =~ s{\.odt}{.pdf}; $ ./so.pl Can't declare scalar assignment in "my" at ./so.pl line 3, near ") =~" Execution of ./so.pl aborted due to compilation errors.
Поместите my в круглые скобки ...
(my $export = $doc) =~ s{\.odt}{.pdf};