Автор Тема: Помогите исправить ошибку в регулярном выражении, помираю!  (Прочитано 3543 раз)

0 Пользователей и 1 Гость просматривают эту тему.

Nikero

  • Гость
Есть такой кусок скрипта в скачаной мной проге:
# Function definition
#
sub system_redirect {
    local($command) = @_\\\\[0\\\\];
    local($ret_status);
    local($tmpname);
    $tmpname = &mdep_get_tmpname();
    $ret_status = system("$command > $tmpname 2>&1");
    #
    # Don't call mdep_rmfile - it calls system_redirect.
    #
    system("$MDEP_RMFILE_COMMAND $tmpname");
    return $ret_status;
}
При компиляции ccperl.exe возникает ошибка в выражении     local($command) = @_\\\\[0\\\\];
Ай нид хелп, работа горит...

Оффлайн Фокусник

  • Светлый
  • Надворный советник
  • *****
  • Сообщений: 477
  • Репутация: 1
  • Пол: Мужской
Не надо дублировать темы.

[Moderator] Добавлю, что дубликаты удалены.
« Последнее редактирование: ёоЭм 06, 2005, 10:54:08 am от Leopotam »
Время не имеет значения, важна только жизнь

kentochek

  • Гость
А что означают слеши после @ и после 0 в []????? А если ты хочешь перменной $command просто присвоить первый переданный параметр, то нужно так local($command) = $_[0];

Оффлайн $_

  • Титулярный советник
  • ****
  • Сообщений: 147
  • Репутация: 1
  • Пол: Мужской
@_ внутри подрограммы одержит список переданных ей параметров. А вот по поваду всей етой конструкции могу сказать что ето полный бред, тем более что она идёт после @_ без чего либо (хотябы точку поставили, в качетсве конкатенации). Даже если ето было бы регулярное выражение, то ни понято что им хотели выразить: из того что там написано как не крути получилось бы \\[0\\]