Показать сообщение отдельно
Старый 07.12.2007, 21:37
wvxvw вне форума Посмотреть профиль Отправить личное сообщение для wvxvw Найти все сообщения от wvxvw
  № 16  
Ответить с цитированием
wvxvw
Modus ponens
 
Аватар для wvxvw

модератор форума
Регистрация: Jul 2006
Адрес: #1=(list #1#)
Сообщений: 8,049
Записей в блоге: 38
Код:
var given_str:String = "<font color='#008080'>Hier kommt die Sonne, Hier kommt die Sonne. Rammstein (c)</font>";
var search_str:String = "sOnNe";
var _txt:TextField = _root.createTextField("_txt",0,0,0,200,200);
_txt.border = true;
_txt.multiline = true;
_txt.wordWrap = true;
_txt.html = true;
_txt.htmlText = given_str;
function searchAndReplace(s_str:String, r_str:String):String {
	r_str = r_str.toLowerCase();
	var n:Number = 0;
	var i:Number = 0;
	var j:Number = 0;
	while(i<s_str.length){
		if(s_str.charAt(i).toLowerCase()==r_str.charAt(0) || n!=0){
			trace("found at "+i+" | "+s_str.charAt(i));
			if (s_str.charAt(i).toLowerCase() == r_str.charAt(j)){
				trace("processing "+s_str.charAt(i).toLowerCase());
				n++;
				j++;
			} else {
				n=0;
			}
			if(n == r_str.length){
				s_str = s_str.slice(0,i-r_str.length)+"<font color='#800000'>"+s_str.slice(i-r_str.length,i+1)+"</font>"+s_str.slice(i+1,s_str.length);
				i+=29+n;
				n=0;
				j=0;
			}
		}
		i++;
	}
	return s_str;
}
_txt.htmlText = searchAndReplace(given_str,search_str);
Ну, как вариант
__________________
Hell is the possibility of sanity