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

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

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

Регистрация: Nov 2007
Сообщений: 12
Question как реализовать замену подстроки в строке?

есть строка ST. необходимо заменить все подстроки = S строкой = S1.

Для первого вхождения:
Код:
ST = ST.substr(1,ST.indexOf(S)-1) + S1 + ST.substr(ST.indexOf(S)+length(S)+1,length(ST))
это оптимальный код или есть альтернатива? если есть возможность, дайте полную функцию для замены всех S на S1 в ST.

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

Регистрация: May 2006
Адрес: Москва
Сообщений: 2,978
Отправить сообщение для DarkLight с помощью ICQ Отправить сообщение для DarkLight с помощью Skype™
Код:
ST = ST.split("S").join("S1");
__________________
4am is time to rock

Старый 04.12.2007, 02:11
Revolter вне форума Посмотреть профиль Отправить личное сообщение для Revolter Найти все сообщения от Revolter
  № 3  
Ответить с цитированием
Revolter

Регистрация: Nov 2007
Сообщений: 12
спасибо. а как узнать колличество вхождений S в ST ?

Старый 04.12.2007, 02:49
DarkLight вне форума Посмотреть профиль Отправить личное сообщение для DarkLight Посетить домашнюю страницу DarkLight Найти все сообщения от DarkLight
  № 4  
Ответить с цитированием
DarkLight
ветеран форума
 
Аватар для DarkLight

Регистрация: May 2006
Адрес: Москва
Сообщений: 2,978
Отправить сообщение для DarkLight с помощью ICQ Отправить сообщение для DarkLight с помощью Skype™
Код:
var ST:String = "aaaF djshf F dlfk  Fgggg hhFg";
var S:String = "F";
var S1:String = "Z"
var tmp:Array = ST.split(S);
var numS:Number = tmp.length-1;//число вхождений
trace("Число вхожений строки "+S+" в строке "+ST+" : "+numS);
ST = tmp.join(S1);
trace("Строка после замены: "+ST);
__________________
4am is time to rock


Последний раз редактировалось DarkLight; 04.12.2007 в 02:52.
Старый 07.12.2007, 01:19
Revolter вне форума Посмотреть профиль Отправить личное сообщение для Revolter Найти все сообщения от Revolter
  № 5  
Ответить с цитированием
Revolter

Регистрация: Nov 2007
Сообщений: 12
Question тонкость

Цитата:
Сообщение от DarkLight
Код:
ST = ST.split("S").join("S1");
как сделать чтобы замена была нечувствительной к регистру букв?
Т.е. у меня такая ситуация:

Код:
ST = "Пример пример";
S = "пример";
S1 = "<font color=""#FF000"">"+S+"</font>";

ST = ST.split("S").join("S1");
Данный код выделит(заменит) только второе слово. Как сделать так чтобы выделялось и первое, причем без потери регистра букв?

Старый 07.12.2007, 01:25
iNils вне форума Посмотреть профиль Отправить личное сообщение для iNils Посетить домашнюю страницу iNils Найти все сообщения от iNils
  № 6  
Ответить с цитированием
iNils
Негуру
 
Аватар для iNils

администратор
Регистрация: Jan 2000
Адрес: Кёнигсберг in Moscow
Сообщений: 21,884
Записей в блоге: 7
Пройтись по обоим вариантам.
__________________
(и)Нильс.ru | Плагины для FlashDevelop

Старый 07.12.2007, 10:20
Revolter вне форума Посмотреть профиль Отправить личное сообщение для Revolter Найти все сообщения от Revolter
  № 7  
Ответить с цитированием
Revolter

Регистрация: Nov 2007
Сообщений: 12
Цитата:
Сообщение от iNils
Пройтись по обоим вариантам.
проблема в том что "Пример" может быть "ПриМеР", т.е. не известно где и сколько там будет заглавных букв. как тогда решить эту задачу?

Старый 07.12.2007, 10:21
CorC вне форума Посмотреть профиль Отправить личное сообщение для CorC Найти все сообщения от CorC
  № 8  
Ответить с цитированием
CorC
 
Аватар для CorC

Регистрация: Jul 2006
Адрес: Земля>Россия>Вологда
Сообщений: 3,056
Отправить сообщение для CorC с помощью ICQ Отправить сообщение для CorC с помощью MSN Отправить сообщение для CorC с помощью Skype™
String.toLowerCase
__________________
"We Are The Champions My Friends!" Queen

Старый 07.12.2007, 10:32
Revolter вне форума Посмотреть профиль Отправить личное сообщение для Revolter Найти все сообщения от Revolter
  № 9  
Ответить с цитированием
Revolter

Регистрация: Nov 2007
Сообщений: 12
не подходит - важно сохранить регистр букв

Старый 07.12.2007, 10:35
etc вне форума Посмотреть профиль Найти все сообщения от etc
  № 10  
Ответить с цитированием
etc
Et cetera
 
Аватар для etc

Регистрация: Sep 2002
Сообщений: 30,787
Тогда пишите более сложный преобразователь.

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

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

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


 


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


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