Forum Webscript.Ru
Программирование => Perl => Тема начата: djkostya от 23 Марта 2006, 00:48:53
-
А как обработать пустой тэг....
нашёл SuppressEmpty => 1
Ну у меня XML формируеться так.....
1
1
Но иногда передаёться следующее
1
1
Так как проверить есть ли она или нет....
-
djkostya:
1
1
"" он не пустой, а ошибочный
-
1
1
Ой сории вот так
-
все равно не правильно.
1
1
Вот так правильно.
-
Ну вобщем у меня так.... http://web-list.ru/test1.xml
Но мне надо проверить http://web-list.ru/test.xml
Передаёться или нет она как это сделать XML::Simple
-
SuppressEmpty => ""
-
как уже было сказано - не правельно ! Это не по XML-ю :( - Тогда $dic = "", а иначе фигня получается...
А если надо проверить есть ли эта ошибочная конструкция, то надо бы сначала регулярным выражением проверить есть ли она.. если есть удалить/исправить и потом парсить XML::Simple.
-
Я понимаю но если вы не в курсе то принемаеться как я уже догнал об этом
Вот проверка кода XML
http://www.hcrc.ed.ac.uk/~richard/xml-check.cgi?url=http%3A%2F%2Fweb-list.ru%2Ftest.xml
-
То есть конструкция вполне может быть в коде XML и не считаеться ошибкой
-
Хм... у меня Опера прочитала так:
XML checker results
The document appears to be well-formed. The canonical XML follows:
1
1
Как я вижу
-
Ну да так и должно быть но в XML чтоб не мудрить с придумали то есть это одно и тоже
-
Хм... надо же... я ошибался, только что сам проверял Expat нормально парсит *удивлён...
Тогда в чём проблемма? Тег dic не попадает в хэш что-ли? или что? В чем проблемма?
-
djkostya:
Так как проверить есть ли она или нет....
if( defined($hash->{dic}) ) { ... } - не оно?
-
Вообще пример кода хотелось бы и пояснения, где не правельно работает...
-
Чтобы проверить
print "Est\'\\n" if exists $xml->{dic};
Но если есть таг, но пустой то создасться пустой хэш, т.е. ссылка на анонимный ничем не заполненный хэш. Ну а с хэшами надеюсь работать умеете.