|
|
ru.perl- RU.PERL ---------------------------------------------------------------------- From : Vargen 2:5020/400 23 Aug 2004 20:21:35 To : Alexander E.Kononenko Subject : Re: XML :: DOM -------------------------------------------------------------------------------- Alexander E.Kononenko wrote: > при первом вызове подпрограммы указывать корренной тег? > а что кидать как $child? > traverse_node($child, "top_tag"); Child kidaets'a sam, t.k. eto peremennaya cykla. Etot primer prigoden dl'a posescheniya tol'ko teh elementov DOM dereva, imena kotoryh sovpadayut s peredannym v $tag. Esli tebe nugno posetit' vse elementy, vypoln'aya operdelennye (raznye) deistviya v zavisimosti ot togo, kakoi element poseschaem, to nujen slegka drugoi podhod. SAX parser ili chto-to vrode: sub visit_node { my $node = shift; for my $child (grep {$_->getNodeType == ELEMENT_NODE} $node->getChildNodes) { my $hsub = \&{__PACKAGE__ . '::visit_' . $child->getNodeName()}; $hsub->($child) if defined &$hsub; visit_node($child); } } V tekuschem package opredel'aesh subroutines visit_XXX, gde 'XXX' imena elementov tvoego DOM, v obrabotke kotoryh ty zainteresovan. Mogu polnyi primer kinut' esli nado. /Vargen > > ________________________________________________________ > Alexander E.Kononenko aka Neo > Программист дирекции по проектированию ИнфоЛада > neo@tlt.ru > ICQ 97553424 > > -- Отправлено через сервер Форумы@mail.ru - http://talk.mail.ru --- ifmail v.2.15dev5.3 * Origin: Talk.Mail.Ru (2:5020/400) Вернуться к списку тем, сортированных по: возрастание даты уменьшение даты тема автор
Архивное /ru.perl/648820b1aa61.html, оценка из 5, голосов 10
|