Я отлаживаю некоторый код и задаюсь вопросом, существует ли какая-либо практическая разница между $1 и \1 в Perl-подстановках регулярных выражений
Например:
my $package_name = "Some::Package::ButNotThis";
$package_name =~ s{^(\w+::\w+)}{$1};
print $package_name; # Some::Package
Эта следующая строка выглядит функционально эквивалентной:
$package_name =~ s{^(\w+::w+)}{\1};
Существуют ли тонкие различия между этими двумя утверждениями? Они ведут себя по-разному в разных версиях Perl?