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

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

Версия для печати  Отправить по электронной почте    « Предыдущая тема | Следующая тема »  
Опции темы Опции просмотра
 
Создать новую тему Ответ
Старый 12.01.2012, 19:42
GBee вне форума Посмотреть профиль Отправить личное сообщение для GBee Найти все сообщения от GBee
  № 21  
Ответить с цитированием
GBee
 
Аватар для GBee

Регистрация: Jan 2009
Сообщений: 3,067
Записей в блоге: 3
Отправить сообщение для GBee с помощью Skype™
Цитата:
В данном случае пост №4 считаю лучшим решением
Ну вот я уже сомневаюсь, надо тесты проводить.

3 сабстринга и 4 конкатенации против одного реплейса и одной конкатенации.

Добавлено через 10 минут
Код AS3:
package
{
	import flash.display.Sprite;
 
	public class Test extends Sprite
	{
		public function Test():void 
		{
			var i:int = 0;
			var t:Number;
		    var len:int = 1000000;
 
			t = new Date().getTime();
			for(i = 0; i<len; i++)
				 parse1(i);
			trace("parse1", new Date().getTime() - t);
 
			t = new Date().getTime();
			for(i = 0; i<len; i++)
				parse2(i);
			trace("parse2", new Date().getTime() - t);
		}
 
 
		private function parse1(num:int):String
		{
			var st:String = "000000" + num;
			return st.replace(/(\d*)(\d{2})(\d{3})(\d{2})/, "$2.$3.$4");
		}
 
		private function parse2(num:int):String
		{
			var st:String = "000000" + num;
			return st.substr(-7, 2) + "." + st.substr(-5, 3) + "." + st.substr(-2, 2);
		}
	}
}
parse1 9157
parse2 2788

Абсолютно чистая победа за №4. :о))
__________________
Чтобы доказать, что вы не робот, причините вред другому человеку.

Старый 12.01.2012, 22:09
i.o. вне форума Посмотреть профиль Отправить личное сообщение для i.o. Найти все сообщения от i.o.
  № 22  
Ответить с цитированием
i.o.
 
Аватар для i.o.

Регистрация: Apr 2010
Адрес: Earth
Сообщений: 1,897
Цитата:
parse1 9157
parse2 2788
Ну тесты в дебажном плеере мало о чем говорят...

Старый 12.01.2012, 22:20
GBee вне форума Посмотреть профиль Отправить личное сообщение для GBee Найти все сообщения от GBee
  № 23  
Ответить с цитированием
GBee
 
Аватар для GBee

Регистрация: Jan 2009
Сообщений: 3,067
Записей в блоге: 3
Отправить сообщение для GBee с помощью Skype™
Вот Фома-то :о)). В релизе:

parse1: 6369
parse2: 1313

Безупречно чистая победа.
__________________
Чтобы доказать, что вы не робот, причините вред другому человеку.

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

Регистрация: Sep 2002
Сообщений: 30,787
Регэкспы по умолчанию тормознее, не знаю, зачем тесты ещё проводить.

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

Регистрация: Jan 2009
Сообщений: 3,067
Записей в блоге: 3
Отправить сообщение для GBee с помощью Skype™
Я много чего еще не знаю. Кто, например, задал эти умолчания, или это как-то эмпирически вычисляется?
__________________
Чтобы доказать, что вы не робот, причините вред другому человеку.

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

Регистрация: Sep 2002
Сообщений: 30,787
Страшная тайна: RegExp написан на AS3.

Старый 12.01.2012, 23:22
GBee вне форума Посмотреть профиль Отправить личное сообщение для GBee Найти все сообщения от GBee
  № 27  
Ответить с цитированием
GBee
 
Аватар для GBee

Регистрация: Jan 2009
Сообщений: 3,067
Записей в блоге: 3
Отправить сообщение для GBee с помощью Skype™
Грусть Печаль
__________________
Чтобы доказать, что вы не робот, причините вред другому человеку.

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

Регистрация: Sep 2002
Сообщений: 30,787
Да, поэтому предпочтение отдаётся ломовым методам, чаще всего.

Старый 12.01.2012, 23:41
i.o. вне форума Посмотреть профиль Отправить личное сообщение для i.o. Найти все сообщения от i.o.
  № 29  
Ответить с цитированием
i.o.
 
Аватар для i.o.

Регистрация: Apr 2010
Адрес: Earth
Сообщений: 1,897
Цитата:
Страшная тайна: RegExp написан на AS3.
O_O
Пруф в студию.

Старый 13.01.2012, 02:36
wvxvw вне форума Посмотреть профиль Отправить личное сообщение для wvxvw Найти все сообщения от wvxvw
  № 30  
Ответить с цитированием
wvxvw
Modus ponens
 
Аватар для wvxvw

модератор форума
Регистрация: Jul 2006
Адрес: #1=(list #1#)
Сообщений: 8,049
Записей в блоге: 38
Код AS3:
private static const _pattern:ByteArray = new ByteArray();
 
private static const _separator:int = 0x2E;
 
private static const _asciiZero:int = 0x30;
 
private static function format(digit:uint):String
{
	var reminder:uint;
 
	_pattern.clear();
	_pattern.length = 13;
	_pattern[0] = 12;
	while (_pattern[0])
	{
		reminder = digit;
		digit /= 10;
		reminder  -= digit * 10;
		if (((_pattern[0] + 1) & 2) == 2)
			_pattern[_pattern[0]--] = _separator;
		_pattern[_pattern[0]--] = _asciiZero + reminder;
	}
	_pattern[0] = _asciiZero + digit;
	return _pattern.toString();
}
Просто от нечего делать
__________________
Hell is the possibility of sanity


Последний раз редактировалось wvxvw; 13.01.2012 в 14:10.
Создать новую тему Ответ Часовой пояс GMT +4, время: 09:29.
Быстрый переход
  « Предыдущая тема | Следующая тема »  

Теги
regexp

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

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


 


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


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