|
ru.perl- RU.PERL ---------------------------------------------------------------------- From : Ivan Frolkov 2:5020/175.2 27 Aug 2005 18:48:44 To : Alexander Kravchenko Subject : Серьезная проблемка с регэкспом -------------------------------------------------------------------------------- Sat Aug 27 2005 17:38, Alexander Kravchenko wrote to All: AK> sub serviceRegExp { AK> eval('while (1) { AK> $_[0] =~ s'.$_[1].' || last; AK> }'); Гениально. Если у нас что-то подставилось, то выскакиваем из цикла. Если же ничего не подставилось - попробуем до посинения еще раз то же самое. Действительно - а вдруг? Попробуй так: sub serviceRegExp{ my($val, $re, $subst) = @_; my $tmp = $val; $tmp =~ s/$re/$subst/; $tmp = eval qq/"$tmp"/; return $tmp if $tmp ne $val; #мама! мама! у меня получилось! return undef; #увы нам, увы } AK> За ответ на этот вопрос особое спасибо, т.к. здесь вообще не представляю AK> в какую сторону думать и от этого очень расстроен. Чует мое сердце, что-то ты странное хочешь... Может, не надо? --- ifmail v.2.15dev5 * Origin: FidoNet Online - http://www.fido-online.com (2:5020/175.2) Вернуться к списку тем, сортированных по: возрастание даты уменьшение даты тема автор
Архивное /ru.perl/3300c41f5335.html, оценка из 5, голосов 10
|