[Moscow.pm] Mojo::DOM - each & replace
Nick Knutov
mail на knutov.com
Чт Дек 26 14:54:57 PST 2013
Очень редко использую Mojo::DOM и не могу понять как сделать ->each так,
чтобы заменить найденное чем-то, сгенерированным на основе найденного.
Пример:
$dom->find('img.image-left')->each(sub {
my $img = shift;
my $alt = $img->attr('alt') | '';
my $r = '<figure class="image-left">'
. $img
. (length($alt)>1? '<figcaption>'.$img->attr('alt').'</figcaption>' : '')
. '</figure>';
$img->replace($r);
return $img->root;
});
Внутри $img->root я получаю именно тот, который надо. Но снаружи ничего
не меняется. Где я не прав?
Подходящие слова к гуглу на тему "mojo dom each replace" подобрать не
удалось. Нагуглить альтернативы Mojo::DOM - тоже. Есть pQuery и куча
разных ::DOM, но нигде не вижу функционала для найти и заменить на
производное от найденного (а во многих модулях и замены нет).
--
Best Regards,
Nick Knutov
http://knutov.com
ICQ: 272873706
Voice: +7-904-84-23-130
Подробная информация о списке рассылки Moscow-pm