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

Вернуться   Форум Flasher.ru > Архив Flasher.ru > Flash > ActionScript

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

Регистрация: Apr 2004
Адрес: Россия, Екатеринбург
Сообщений: 28
Отправить сообщение для BlackScorpion с помощью ICQ
Question Все тоже текстовое поле.

Имеется текстовое поле, с определенным текстом.
Требуется в любой позиции этого текста изменить символ.
Подскажите пожалуйста как это сделать.

Старый 29.04.2004, 10:47
_zhloba вне форума Посмотреть профиль Отправить личное сообщение для _zhloba Посетить домашнюю страницу _zhloba Найти все сообщения от _zhloba
  № 2  
_zhloba

Регистрация: Apr 2004
Адрес: Минск
Сообщений: 176
функции для работы со строками во флаше слабоваты, приходится писать свои.
Вот, например, функция, которая заменяет в строке txt_str все символы replace_what на символы replace_to

function replaceSymbol(txt_str, replace_what, replace_to){
var t_str="";
var num=txt_str.length;
var i=0;
for (i=0;i<num;i++){
if(txt_str.charAt(i)==replace_what)
{t_str+="replace_to'";}
else{t_str+=txt_str.charAt(i);}
}
return t_str;
}

это не альтернатива функции string_replace() для других языков программирования, так как она замещает отдельные символы, а не подстроки.
Но ее можно преобразовать для твоих нужд

function replacePosition(txt_str, position, replace_to){
var t_str="";
var num=txt_str.length;
var i=0;
for (i=0;i<num;i++){
if(i==position){ t_str+=replace_to; }
else{t_str+=txt_str.charAt(i);}
}
return t_str;
}

И использовать
text_field.text=replacePosition(text_field.text,5,"w");

Кстати, может быть, кто-то напишет функцию
string_replace() для замены подстроки в строке?
__________________
Юра

Старый 29.04.2004, 12:35
Nucer вне форума Посмотреть профиль Отправить личное сообщение для Nucer Посетить домашнюю страницу Nucer Найти все сообщения от Nucer
  № 3  
Nucer
[++]
 
Аватар для Nucer

Регистрация: Jan 2003
Адрес: Москва
Сообщений: 839
Отправить сообщение для Nucer с помощью ICQ
Код:
function replace ( STR:String , WAS:String , NEED:String ):String
{
	var RES:String;
	var j:Number = 0;
	var TEMP:String;
	var ARR:Array = new Array ();
	for ( i:Number = 0 ; i < STR.length ; i++ )
	{
		TEMP = STR.slice( i , i + WAS.length );
		if ( TEMP == WAS )
		{
			ARR[j] = NEED;
			i += WAS.length - 1;
		}
		else
		{
			ARR[j] = STR.charAt( i );
		}
		j++;
	}
	RES = ARR.join( "" );
	return RES;
}
Вроде то что надо и вроде работает - сам писал

Старый 29.04.2004, 13:39
_zhloba вне форума Посмотреть профиль Отправить личное сообщение для _zhloba Посетить домашнюю страницу _zhloba Найти все сообщения от _zhloba
  № 4  
_zhloba

Регистрация: Apr 2004
Адрес: Минск
Сообщений: 176
Спасибо.
Кстати, я вынес тему строковых функций в отдельный топик в разделе ActionScript2.
Тут есть, что обсуждать. К примеру - поддержка регулярных выражений в той же string_replace()
__________________
Юра

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

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

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


 


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


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