Форум Flasher.ru

Форум Flasher.ru (http://www.flasher.ru/forum/index.php)
-   ActionScript 3.0 (http://www.flasher.ru/forum/forumdisplay.php?f=83)
-   -   Регулярные выражения (http://www.flasher.ru/forum/showthread.php?t=116957)

Bорон 15.10.2008 13:28

Регулярные выражения
 
Приятного времени суток.
Помогите разобраться с регулярным выражением пожалуйста.

Есть текст:
Код:

some text1 and [link=http://google.com/]some_link[/link]
Я его пытаюсь переделать в ссылку:
Код:

var text = "some text1 and [link=http://google.com/]some_link[/link]";
var pattern:RegExp = new RegExp("[link=([^\]]+)\]([^\[]+)\[/link\]", "iu");
trace(str.replace(pattern, "<a href='\\1'>\\2}<\a>"));

И получаю вот такое чудо:
Код:

some text1 a<a href='\1'>\2}<\>d [link=http://google.com/]some_link[/link]
А почему? Такой код в php работает:
Код:

<?php
header('Content-Type:text/html; charset=utf-8');
$pattern = "|\[link=([^\]]+)\]([^\[]+)\[/link\]|iu";
$replacement = "<a href='\\1'>\\2<\a>";
$text = "some text1 and [link=http://google.com/]some_link[/link]";
echo preg_replace($pattern,$replacement,$text);
?>

Я так понимаю что я неразобрался как переменные из () отлавливать. но почему оно еще и часть ссылки оставляет?

Помогите пожалуйста.

Haiat 15.10.2008 13:32

где можно почитать на русском про регулярные выражения во flash?
спасибо

udaaff 15.10.2008 23:08

Код:

var text = "some text1 and [link=http://google.com/]some_link[/link]";
var pattern:RegExp = new RegExp("\\[link=([^\\]]+)\\]([^\\[]+)\\[/link\\]", "ig")
//var pattern:RegExp = /\[link=([^\]]+)\]([^\[]+)\[\/link\]/gi;
trace(text.replace(pattern, "<a href='$1'>$2<\\a>"));
// some text1 and <a href='http://google.com/'>some_link<\a>


SSergeyS 16.10.2008 20:50

Подскажите доку о reg Exp на русском. Хочется разобраться и не плодить темы "как сделать то или то" )))

etc 16.10.2008 21:00

Цитата:

Сообщение от SSergeyS (Сообщение 770836)
Подскажите доку о reg Exp на русском. Хочется разобраться и не плодить темы "как сделать то или то" )))

Какой же немощный в последнее время народ стал, вбить три слова в поисковик, оказывается, абсолютно непосильный труд.

http://www.google.ru/search?complete...A&lr=&aq=f&oq=


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

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