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

Вернуться   Форум Flasher.ru > Flasher.ru > Флейм

Версия для печати  Отправить по электронной почте    « Предыдущая тема | Следующая тема »  
Опции темы Опции просмотра
 
Создать новую тему Ответ
Старый 27.12.2006, 23:01
Nirth вне форума Посмотреть профиль Отправить личное сообщение для Nirth Посетить домашнюю страницу Nirth Найти все сообщения от Nirth
  № 1  
Ответить с цитированием
Nirth
4AM Games
 
Аватар для Nirth

блогер
Регистрация: Nov 2002
Адрес: Sofia
Сообщений: 6,264
Записей в блоге: 1
Отправить сообщение для Nirth с помощью ICQ Отправить сообщение для Nirth с помощью AIM Отправить сообщение для Nirth с помощью MSN Отправить сообщение для Nirth с помощью Yahoo Отправить сообщение для Nirth с помощью Skype™
Мирамакс, ты читал мой вопрос=)? как ты split\join ом сумеешь найти тэги с разным наполнением?
__________________
Я перестал переписывать, начал редактировать, еще лет 15 и я стану писателем ^_^

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

Регистрация: Oct 2005
Адрес: Борисоглебск
Сообщений: 1,702
Отправить сообщение для miramax с помощью ICQ Отправить сообщение для miramax с помощью AIM Отправить сообщение для miramax с помощью MSN Отправить сообщение для miramax с помощью Yahoo Отправить сообщение для miramax с помощью Skype™
Код:
var str:String = "Текст[anchor='xmlLink'] в тексте есть такие места'] text sdfs[/anchor]или такие']['  [anchor='xmlLink'] ещё одна ссылка[/anchor]здесь нет ссылки [anchor='xmlLdfdfink']и ещё какая-то ссылка[/anchor]";
var ar:Array;
var i:int = 1;
var a:Array 
ar = str.split("[anchor='")
while(i < ar.length)
{
	a = ar[i].split("']")
	if(a.length>1) a.unshift(a.shift().concat("'>", a.shift()));
	a = a.join("']").split("[/anchor]")
	if(a.length>1) a.unshift(a.shift().concat("</a>", a.shift()));
	ar[i] = a.join("");
	i+=1
}
str = ar.join("<a href='asfunction:")
trace(str)
__________________
AS3 | www.FLAPS.ru | Русские флэшеры самые умные флэшеры в мире. ©


Последний раз редактировалось miramax; 28.12.2006 в 00:20.
Старый 28.12.2006, 00:21
Nirth вне форума Посмотреть профиль Отправить личное сообщение для Nirth Посетить домашнюю страницу Nirth Найти все сообщения от Nirth
  № 3  
Ответить с цитированием
Nirth
4AM Games
 
Аватар для Nirth

блогер
Регистрация: Nov 2002
Адрес: Sofia
Сообщений: 6,264
Записей в блоге: 1
Отправить сообщение для Nirth с помощью ICQ Отправить сообщение для Nirth с помощью AIM Отправить сообщение для Nirth с помощью MSN Отправить сообщение для Nirth с помощью Yahoo Отправить сообщение для Nirth с помощью Skype™
Тебе не кажется что заменять все символы ] не нужно =)? вдруг они используются еще для каких либо целей, а нужно заменять, только если они являются частью чего либо.
__________________
Я перестал переписывать, начал редактировать, еще лет 15 и я стану писателем ^_^

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

Регистрация: Oct 2005
Адрес: Борисоглебск
Сообщений: 1,702
Отправить сообщение для miramax с помощью ICQ Отправить сообщение для miramax с помощью AIM Отправить сообщение для miramax с помощью MSN Отправить сообщение для miramax с помощью Yahoo Отправить сообщение для miramax с помощью Skype™
Цитата:
Сообщение от Nirth
Тебе не кажется что заменять все символы ] не нужно =)? вдруг они используются еще для каких либо целей, а нужно заменять, только если они являются частью чего либо.
Нет, здесь заменяется то что нужно.
__________________
AS3 | www.FLAPS.ru | Русские флэшеры самые умные флэшеры в мире. ©

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

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

Старый 29.12.2006, 07:31
Bright вне форума Посмотреть профиль Отправить личное сообщение для Bright Найти все сообщения от Bright
  № 6  
Ответить с цитированием
Bright
 
Аватар для Bright

Регистрация: Nov 2003
Адрес: www.flasher.ru/forum
Сообщений: 946
не знаю на счет АС3, но хороший мануал по регулярным выражениям есть на пхпклубе.
если не читал (сомневаюсь ) посмотри.

Цитата:
Сообщение от Nirth
нифига не работает.

возвращает 1 (а в строке 2 акронима).
это зависит не от выражения, а от функции, которая его использует.
может она прекращает работу после первого вхождения?
__________________
44px|freealt|...

Старый 29.12.2006, 08:52
Nirth вне форума Посмотреть профиль Отправить личное сообщение для Nirth Посетить домашнюю страницу Nirth Найти все сообщения от Nirth
  № 7  
Ответить с цитированием
Nirth
4AM Games
 
Аватар для Nirth

блогер
Регистрация: Nov 2002
Адрес: Sofia
Сообщений: 6,264
Записей в блоге: 1
Отправить сообщение для Nirth с помощью ICQ Отправить сообщение для Nirth с помощью AIM Отправить сообщение для Nirth с помощью MSN Отправить сообщение для Nirth с помощью Yahoo Отправить сообщение для Nirth с помощью Skype™
я ставил g и i и еще какой то указатесь, пользвался RegExp.exec(), и string.search() =) да я тупой в регулярных, я не скрываю, уже больше года (с альфа флекса) пытаюсь понять че в них =)
__________________
Я перестал переписывать, начал редактировать, еще лет 15 и я стану писателем ^_^

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

Регистрация: Dec 1999
Адрес: Магадан
Сообщений: 763
А я вот очень люблю регулярные выражения во флэше, и использую их даже там, где не надо...

Код:
var line = '[acronim="eXtensible Markup Language"]XML[/acronim] text text text text text text \ntext [acronim="eXtensible Markup Language Again"]another XML[/acronim]';
var reg = /\[acronim=("[^"]*")\]([^\[]*)\[\/acronim\]/g;
var result = line.replace(reg,"<a href=asfunction:$1>$2</a>");
trace(result);
(не обрабатывает вхождения кавычек и квадратных скобок внутри искомых строк - их лучше "выкусывать" отдельным регулярным выражением)

У меня два вхождения числа 666 под аватарой!
__________________
Верить никому нельзя. Мне - можно. :)


Последний раз редактировалось Dendroid; 29.12.2006 в 10:56.
Старый 29.12.2006, 11:02
etc вне форума Посмотреть профиль Найти все сообщения от etc
  № 9  
Ответить с цитированием
etc
Et cetera
 
Аватар для etc

Регистрация: Sep 2002
Сообщений: 30,787
Цитата:
Сообщение от Dendroid
У меня два вхождения числа 666 под аватарой!
Одно неверно определилось )

Nirth, сорри, НГ на носу, какой флеш…

Старый 29.12.2006, 15:07
miramax вне форума Посмотреть профиль Отправить личное сообщение для miramax Посетить домашнюю страницу miramax Найти все сообщения от miramax
  № 10  
Ответить с цитированием
miramax
 
Аватар для miramax

Регистрация: Oct 2005
Адрес: Борисоглебск
Сообщений: 1,702
Отправить сообщение для miramax с помощью ICQ Отправить сообщение для miramax с помощью AIM Отправить сообщение для miramax с помощью MSN Отправить сообщение для miramax с помощью Yahoo Отправить сообщение для miramax с помощью Skype™
Цитата:
Сообщение от Dendroid
(не обрабатывает вхождения кавычек и квадратных скобок внутри искомых строк - их лучше "выкусывать" отдельным регулярным выражением)
Если такое разрешить, то сплит-джоинтами ещё проще будет и быстрее :
Код:
var line:String = '[acronim="eXtensible Markup Language"]XML[/acronim] text text text text text text \ntext [acronim="eXtensible Markup Language Again"]another XML[/acronim]';
var result:String = line.split('[acronim="').join('<a href="').split('"]').join(">").split('[/acronim]').join('</a>')
trace(result);;
Юзать String.replace() - будет лаконичнее, но этот метод слишком медленный, если надо обработать несколько тысяч символов.
Но есть множество задач, где без регулярных выражений туго
Цитата:
У меня два вхождения числа 666 под аватарой!
Срочно отпишись в этом топике !
__________________
AS3 | www.FLAPS.ru | Русские флэшеры самые умные флэшеры в мире. ©


Последний раз редактировалось miramax; 29.12.2006 в 15:09.
Создать новую тему Ответ Часовой пояс GMT +4, время: 08:59.
Быстрый переход
  « Предыдущая тема | Следующая тема »  
Опции темы
Опции просмотра
Комбинированный вид Комбинированный вид

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

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


 


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


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