Forum Webscript.Ru

Программирование => Perl => Тема начата: NeiroN от 02 Сентября 2008, 11:10:51

Название: парсинг в перл
Отправлено: NeiroN от 02 Сентября 2008, 11:10:51
столкнулся в проблемой парсинга на перл!
вообще я программист пхп но заставили писать скрипт именно на перле))

прилепил модуль XML::DOM и с помощью его отлично распарсил тестовую xml-ку
А вот когда заслали нужный xml с тэгом - модуль парсить его отказался!

Попробовал поюзать модули XML:parser и XML::Simple но не разберусь толком как с помощью них получить нужный массив или переменные с xml-ки

через дампер к примеру:
use XML::Simple;
use Data::Dumper;
$xml = new XML::Simple;
$data = $xml->XMLin("test3.xml");
print Dumper($data);

выводит мне
$VAR1 = {
          \'version\' => \'1.02\',
          \'request-auth\' => {
                              \'password\' => \'some password\',
                              \'account-number\' => \'12345678910\',
                              \'session-id\' => \'3424234234\',
                              \'payment-id\' => \'123243\',
                              \'login\' => \'some login\'
                            }
        };
но как выловить эти переменные хоть убейте непойму
Название: парсинг в перл
Отправлено: NeiroN от 02 Сентября 2008, 12:14:22
разобрался как всеже достать переменные но опять же проблема с тегом протокола!

без него все в идеале достаю через $data->{teg}
с ним - ничего
Название: парсинг в перл
Отправлено: NeiroN от 03 Сентября 2008, 10:00:27
наконецто домучал!
$a = $data->{\'request-auth\'};
$login = $a->{\'login\'};

забыл о подуровнях ))
Название: парсинг в перл
Отправлено: arto от 03 Сентября 2008, 10:05:30
$login = $data->{\'request-auth\'}->{\'login\'}