URL: https://www.opennet.me/cgi-bin/openforum/vsluhboard.cgi
Форум: vsluhforumID8
Нить номер: 4664
[ Назад ]

Исходное сообщение
"Траблы с интерполяцией переменных в регэкспах..."

Отправлено hicks , 31-Янв-07 15:25 
Доброго дня.

Есть выражение:
$env{'content'} =~ s/.*?(?:$env{'begin'})(.+?)(?:$env{'end'}).*/$1/is;

требуется найти все, что находится между $env{'begin'} и $env{'end'}...

Под денвером локально все работает на ура, а на серваке переменные $env{'begin'} и $env{'end'} не интерполируются ни в какую... то есть, если подставить руками их значения, то все работает...

перлы одинаковые стоят и там, и там... спец символы заэкранены...

помогите, кто знает =)


Содержание

Сообщения в этом обсуждении
"Траблы с интерполяцией переменных в регэкспах..."
Отправлено hicks , 01-Фев-07 00:17 
хммм... дело в том, что если переменная не определена до запуска скрипта, то она и не работает... но такое только под никсами... видимо рег выражения компилятся до того как переменные эти определятся...

есть у кого идеи как обойти?

дело в том, что эти переменные читаются из файла во время выполнения скрипта и заносятся в хэш, который можно вывести на экран и убедится, что все переменные на месте... только вот в регэкспах не работает это...