Форум Flasher.ru
Ближайшие курсы в Школе RealTime
Список интенсивных курсов: [см.]  
  
Специальные предложения: [см.]  
  
 
Блоги Правила Справка Пользователи Календарь Сообщения за день
 

Вернуться   Форум Flasher.ru > Flash > ActionScript 1.0/2.0

Версия для печати  Отправить по электронной почте    « Предыдущая тема | Следующая тема »  
Опции темы Опции просмотра
 
Создать новую тему Ответ
Старый 25.06.2012, 17:57
JOKER_MAX вне форума Посмотреть профиль Отправить личное сообщение для JOKER_MAX Найти все сообщения от JOKER_MAX
  № 1  
Ответить с цитированием
JOKER_MAX

Регистрация: Feb 2011
Сообщений: 27
По умолчанию Перебор и замена символов в переменной, загруженной из XML

Здравствуйте. Есть файл XML такой структуры

PHP код:
<data>
<
item fam="Иванов" io="Иван Иванович" prof="Начальник транспортного отдел"/>
</
data
Каждый из атрибутов присваивается отдельному текстовому полю.
Поле, куда записывается атрибут prof многострочное
Задачи две и они состоят в следующем: Есть некоторые профессии, в которых перенос на новую строку нужно задавать явно в тексте, в примеру: Начальник%транспортного отдел
И на месте знака % должен быть перенос строки.
Думал сделать это проверкой строки по символам, и при нахождении такого знака делать перенос. Или это можно сделать гораздо проще?
Вторая задача: Имеется массив с наименованием отделов. И хотелось бы реализовать такую систему:
PHP код:
<data>
<
item fam="Иванов" io="Иван Иванович" prof="Начальник 1 отдел"/>
</
data
Так же делается перебор символов, и при нахождении цифры, он бы брал значение массива под таким номером. В данном случае arrayProf[1] = "транспортного"
Очень надеюсь на вашу помощь.

Старый 25.06.2012, 18:04
Hauts вне форума Посмотреть профиль Отправить личное сообщение для Hauts Посетить домашнюю страницу Hauts Найти все сообщения от Hauts
  № 2  
Ответить с цитированием
Hauts
 
Аватар для Hauts

блогер
Регистрация: Feb 2008
Адрес: Россия, Новосибирск, Академгородок
Сообщений: 2,112
Записей в блоге: 1
Отправить сообщение для Hauts с помощью ICQ Отправить сообщение для Hauts с помощью Skype™
Код AS1/AS2:
var xmlStrokeData = ...
 
xmlStrokeData = xmlStrokeData.split("%").join("\n"); // заменяем на перенос строки
Для массивов можно так:

Код AS1/AS2:
function replaceFromArray(str, arr) {
	var tmp = str.split(" ");
	var l = tmp.length;
	for (var k = 0; k < l; k++) {
		var s = tmp[k];
		if (s.indexOf("%") != -1) {
			tmp[k] = arr[Number(s.substr(1))];
		}
	}
	return tmp.join(" ");
}
var arr = ["дворник", "повар", "водитель", "бомж"];
var str = "Кто-то там, оказывается, был %2";
 
trace(replaceFromArray(str, arr));
— только тут не просто числа меняются, а только числа с "%", чтобы явно отличать просто числа от подставляемых данных.
__________________
hauts.ru


Последний раз редактировалось Hauts; 25.06.2012 в 18:14.
Старый 25.06.2012, 18:37
JOKER_MAX вне форума Посмотреть профиль Отправить личное сообщение для JOKER_MAX Найти все сообщения от JOKER_MAX
  № 3  
Ответить с цитированием
JOKER_MAX

Регистрация: Feb 2011
Сообщений: 27
[quote=Hauts;1085988]
Код AS1/AS2:
var xmlStrokeData = ...
 
xmlStrokeData = xmlStrokeData.split("%").join("\n"); // заменяем на перенос строки
Спасибо, все работает. А я проблему с подстановкой из массива решил так:

Код AS1/AS2:
varProf = varProf.split("$").join("\n");
 for (i=100;i>=0;i--)
{
    varProf = varProf.split("%"+i).join(arrayProf[i]);
}

Создать новую тему Ответ Часовой пояс GMT +4, время: 16:00.
Быстрый переход
  « Предыдущая тема | Следующая тема »  

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.


 


Часовой пояс GMT +4, время: 16:00.


Copyright © 1999-2008 Flasher.ru. All rights reserved.
Работает на vBulletin®. Copyright ©2000 - 2024, Jelsoft Enterprises Ltd. Перевод: zCarot
Администрация сайта не несёт ответственности за любую предоставленную посетителями информацию. Подробнее см. Правила.