История изменений
Исправление mihalych, (текущая версия) :
gh0stwizard, прошу прощения, что вмешиваюсь, но по крайней мере несколько Ваших высказываний неверны.
Пример кода, к которому Вы прицепились, работает по плану. Печатает пустую строку. Я бы, правда, посоветовал для универсальности использовать «and» вместо «&&», если так хочется избежать «if». То есть:
perl -e '"test" =~ /^(.*?)t/ and print "[$1]\n"'
Нет никаких проблем использовать $1 в коде, в который попадаешь лишь при срабатывании заранее известного регекспа; в данном случае $1 никогда не может быть undef. Поэтому, вовсе непонятен Ваш пассаж про продакшн.
Исходная версия mihalych, :
gh0stwizard, прошу прощения, что вмешиваюсь, но по крайней мере несколько Ваших высказываний неверны.
Пример кода к которому Вы прицепились работает по плану. Печатает пустую строку. Я бы, правда, посоветовал для универсальности использовать «and» вместо «&&», если так хочется избежать «if». То есть:
perl -e '"test" =~ /^(.*?)t/ and print "[$1]\n"'
Нет никаких проблем использовать $1 в коде, в который попадаешь лишь при срабатывании заранее известного регекспа; в данном случае $1 никогда не может быть undef. Поэтому, вовсе непонятен Ваш пассаж про продакшн. :)