Perl :передает поиск и замену регулярных выражений с использованием переменных

У меня есть сценарий Perl, который читает поиск регулярных выражений и заменяет значения из файла INI.

Это работает нормально, пока я не попытаюсь использовать переменные захвата ($1 или \1 ). Они заменяются буквально на $1 или \1.

Любые идеи, как я могу заставить эту функцию захвата работать, передавая биты регулярных выражений через переменные? Пример кода (без использования ini-файла )...

$test = "word1 word2 servername summary message";

$search = q((\S+)\s+(summary message));
$replace = q(GENERIC $4);

$test =~ s/$search/$replace/;
print $test;

Это приводит к...

word1 word2 GENERIC $4

НЕ

word1 word2 GENERIC summary message

спасибо

6
задан andyml73 13 July 2012 в 11:39
поделиться