![]() |
|
Модераторы: diadiavova |
![]()
|
|
| Mephisto |
|
||||||||
![]() Волкъ ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1818 Регистрация: 27.8.2003 Где: Питер Репутация: нет Всего: 34 |
Фух, снова запарился с этой задачкой. Уже несколько часов воюю и не могу добить такую задачку
Исходный XML выглядит так:
Использую следующее преобразование:
Результат получаю следующий:
В исходном XML группировку испортил влезшая подстрока " / kill this". Никак не могу прибить все символы после " /". Ломается группировка :( Нужно получить следующее:
|
||||||||
|
|||||||||
| magelan |
|
||||
![]() потерял xPath ![]() ![]() Профиль Группа: Участник Сообщений: 393 Регистрация: 5.4.2010 Репутация: 7 Всего: 16 |
|
||||
|
|||||
| Mephisto |
|
||||||
![]() Волкъ ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1818 Регистрация: 27.8.2003 Где: Питер Репутация: нет Всего: 34 |
magelan, я пробовал нечто подобное, но нужно нечто сложнее, ибо результат получается такой:
Сложность в том что не всегда косая черта встречается. Элементы:
Должны попасть в одну группу:
|
||||||
|
|||||||
| magelan |
|
|||
![]() потерял xPath ![]() ![]() Профиль Группа: Участник Сообщений: 393 Регистрация: 5.4.2010 Репутация: 7 Всего: 16 |
Эх, заказываете платье на королевну, а суете в него товарку...
Для товарки, методом дяди Вовы задачку решаем, трансформер конечно встанет раком, ему прийдется обработать число нод в 3й степени:
Ежели вы таки влетели на несколько мегобайтный хмл и кэш трансформера лопнул, надо этот метод малость усовершенствовать, т.е. действительно использовать двухпроходный алгоритм, в первой части которого создать сортированный нодесет, возможно частично переработанный. Вторым проходом пустить по нему рекурсивную функцию, которая будет действовать наподобие SAX парсера строя по сути дела не хмл, а строку нужного вам вида. Это сообщение отредактировал(а) magelan - 4.10.2010, 01:23 |
|||
|
||||
| Mephisto |
|
|||
![]() Волкъ ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1818 Регистрация: 27.8.2003 Где: Питер Репутация: нет Всего: 34 |
Да я сам расстроился когда такое увидел :( Я просто с различных ресурсов собираю данные в XML формате и объединяю все в один с известным форматом, который позже обрабатываю. Вот на одном из ресурсов такая пакость есть :( В моем случае это вряд ли случится. Записей не так много. Спасибо за помощь. |
|||
|
||||
![]()
|
| Правила форума "XML/XSLT" | |
|
|
Прежде чем опубликовать вопрос, попробуйте воспользоваться поиском - возможно тема уже поднималась. Также рекомендуем Вам зайти в раздел FAQ ,раздел дополняется и, возможно, там вы увидите готовое решение. Для ответов на часто задаваемые вопросы существует FAQ раздела. Новости можно публиковать в разделе новостей. Для статей так же есть специальный раздел Желаем удачи в Вашем деле! Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, diadiavova. |
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | XML, XSL | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |