|
ru.perl- RU.PERL ---------------------------------------------------------------------- From : Ilgiz Kalmetev 2:5011/36.6 14 Sep 2000 09:18:08 To : All Subject : Re: =~ tr/$/$/; -------------------------------------------------------------------------------- Wed, 13 Sep 00 22:29:34 +0600, Denis Wnuckoff ==>: > Как осyществить заменy, если шаблоны содеpжатся в пеpеменных? > Типа: > $tpl1 = "qwerty"; > $tpl2 = "йцyкен"; > > $tpl =~ tr/$tpl1/$tpl2/; > ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^Hе пpокатит :(( perldoc perlop Там, в описании tr, указывается как надо "разворачивать" переменные с помощью eval: eval "tr/$tpl1/$tpl2"; die $@ if $@; Однако, если ты попытаешься включить в eval "$tpl =~", то $tpl тоже попытается "развернуться". Я эти грабли обошел так: ($_, $tpl) = ($tpl, $_); eval "tr/$tpl1/$tpl2"; die $@ if $@; ($_, $tpl) = ($tpl, $_); -- Ilgiz Kalmetev --- slrn/0.9.5.3 (UNIX) * Origin: GoodPlace (2:5011/36.6@fidonet) Вернуться к списку тем, сортированных по: возрастание даты уменьшение даты тема автор
Архивное /ru.perl/14697e0307481.html, оценка из 5, голосов 10
|