![]() |
Как в одну строчку кода сделать xml-рыбу?
Есть экземпляр класса XML без потомков, но с атрибутами, например такой:
<item id="12345" name="qwerty" /> Как из него сделать рыбу в одну строчку кода? <item id="" name=""/> В одну строчку никак?))) Это все нужно для того, чтобы провести минимальную верификацию структуры данных на то, что все данные в xml-листе одного типа (в примере item), имеют одинаковое число атрибутов, и эти атрибуты имеют одинаковые имена. Т.е. решение мне видится так, что все элементы xml-листа приводятся к рыбе, а затем сравниваются с какой-то проверочной рыбой (или просто с рыбой первого элемента в листе) через метод toXMLString( ). Т.е., если все элементы имеют одинаковую структуру, то и рыбы у них одинаковые. Конкретно "сделать рыбу в одну строчку" - это чисто из спортивного интереса))) А вы как бы решали проблему верификации структуры данных в xml-листе? |
Что именно надо верифицировать?)) Что у всех item есть id и name?
Код AS3:
Добавлено через 11 минут Рыба в одну строчку Код AS3:
|
Код AS3:
|
Не, что касается не рыбы, а верификации вообще, то надо сделать проверку, чтобы все элементы в листе имели однородную структуру, т.е. имели один и тот же тип (имя) (мы его не знаем и не должны знать, но в примере это item ), и одинаковый набор атрибутов (одинаковое кол-во и имена) - опять же без какой-либо конкретики,типа id и name, - просто однородность структуры данных должна быть.
Детей рассматривать не надо, т.к. это уже не имеет отношения конкретно к рассматриваемым нами данным. Вот с этой точки зрения, чтобы проверить однородность xml-листа, надо сравнить рыбы от всех его элементов, т.е. сравнить с рыбой первого элемента рыбы всех остальных. Добавлено через 3 минуты вот мое кондовое решение))) и рыба не в одну строчку)))) Код AS3:
|
А если атрибуты местами поменять?
|
Код AS3:
|
Код:
/=".*?"/g |
udaaff))))
А если ошибка в первенце))) Тут все вилами на воде... |
Цитата:
иначе нам просто не организовать структуру, которая не была бы привязана к каким-то конкретным именам Добавлено через 2 минуты Цитата:
и я нихрена не понял, что происходит в скобках replace))))) это надо регулярные выражения почитать, или что это? |
Да, регулярные выражения.
Ищем =", потом любые символы кроме ", потом " Когда такая последовательность найдена, она заменяется на ="" Можно и toXMLString(), я не против))) |
| Часовой пояс GMT +4, время: 14:25. |
Copyright © 1999-2008 Flasher.ru. All rights reserved.
Работает на vBulletin®. Copyright ©2000 - 2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Администрация сайта не несёт ответственности за любую предоставленную посетителями информацию. Подробнее см. Правила.