![]() |
сможете сюда скинуть рабочий вариант?:)
|
на данный момент, я проверил работу и все таки первый вариант был рабочим. Я подумал, что он не работает, потому что использовал в тестовом варианте сейчас в названиях полей символы которые не разрешены.
обратите внимание в содержание константы ALPHABET Все символы которые она содержит, являются разрешенными. В случае если в шаблоне в названии переменной есть символ которые не является разрешенным, например цифра или английская буква в верхнем регистре, то эта переменная не будет воспринята. И замены не произойдет. А вобще скиньте ваш код конкретный, который не работает. Я попробую вам помочь. А так даже тот код который я скидывал вполне рабочий. Переменные работают для такого объекта прекрасно: Код AS3:
Код AS3:
единственно нашел ошибку с вылитающим эксепшеном, если в объекте нет такой переменной. Теперь обработка не прекращается, а просто выдается трейс. Ну и переменная остается незамененной. +Добавил в алфавит цифры. Вот исправленный вариант Код AS3:
|
незнаю....несколько раз проверил ваш метод и он не работает у меня(((
кстати, а запись new TestObject() ведь равносильна this, если мы пишем этот код внутри класса TestObject ? |
А зачем всё так сложно, не проще иметь 2 узла xml, а между ними вставлять уже необходимую переменную.
<useVarCount> <node>У вас осталось</node> <node>попыток</node> </useVarCount> |
Нашёл проблему: ваш метод не работает, если в строке перед %tries% идёт какойто текст. Как это решить?
Добавлено через 1 минуту to strangedk - а если у вас таких узлов нужно 10 в строке, будете 10 тегов писать? Это как минимум не удобно |
ага, буду 10 тегов)
Не, ну я просто размышляю простым путём, и ничто не мешает создать тег типа <injectNode> и в него пихать то что должно быть между тегами: <node1>У вас осталось</node1> <injectNode>counter</injectNode> <node2>попыток</node2> Я знаю что это совсем не гибко, и прекрасно это понимаю. Но увидев тучу кода выше, я уж и не знаю какой метод лучше. Хочется - пишите свой парсер, кто ж мешает |
так вот эту вещь удалите:
Код AS3:
strangedk, Извините, конечно, на правах холивара. Но я удивляюсь порой программистам. Вы предлагаете меньше писать кода, но при этом предлагаете решение, которое труднее поддерживать и заранее более уязвимое к человеческому фактору и в плане количества данных гораздо более избыточное? |
Я вас прекрасно понимаю. Сам стремлюсь всегда к совершенству, и это замечательно.
Только перебарщивать с преждевременной оптимизацией - зло И так как мне совершенно не ясны масштабы задачи - я предложил свой вариант, который был применен в одном из моих приложений, буквально с 20 строчками текста. Если же у вас таких внедрений будет много, тогда разумеется есть смысл изобрести свой парсер. |
всем давно известно(а может и не всем?), что "преждевременная оптимизация-это зло" фраза за которую даже Кнут уже извинялся. Так как ее цитирование без контекста, порождает вот такие "аргументы". Преждевременная оптимизация не зло. Забудьте уже про это.
|
Ага, в приложении которое должно выводить 2 строчки давайте прикрутим locale, ant, внешний logger и еще какой-нибудь фреймверк заюзаем, а-ля robotlegs или parsley.
- так чувствуется разница? ) |
| Часовой пояс GMT +4, время: 12:45. |
Copyright © 1999-2008 Flasher.ru. All rights reserved.
Работает на vBulletin®. Copyright ©2000 - 2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Администрация сайта не несёт ответственности за любую предоставленную посетителями информацию. Подробнее см. Правила.