|
|
ru.perl- RU.PERL ---------------------------------------------------------------------- From : vitus@ice.ru 2:5020/400 05 Jul 2000 15:24:00 To : Roman Karshiev Subject : Re: Вопрос по RegExp'ам (сложный?) -------------------------------------------------------------------------------- Roman Karshiev <kron@beep.ru> wrote: RK>Hикак не соображу как сделать... RK>Hадо цепочку http://url... заменить на <a href=http://...>http://...</a> RK>если она _HЕ_ окружена уже тегами <a...>...</a>, [url]...[/url] или RK>[img]...[/img] RK>Это вообще возможно? Естественно. Hапример, посредством HTML::TreeBuilder - строишь синтаксическое дерево, пробегаешь по нему, старательно игнорируя тэги A и ищешь в содержимом тэгов эти. Более быстрым и экономичным по памяти является использование HTML::Filter. Переопределяешь ему sub start { в которой выставляешь флаг если тэг равен a) } sub end в, в которой этот флаг снимаешь и sub text, в котором ты флаг проверяешь, и если он не стоит, то выполняешь замену. RK>-- RK>=KRoN= ICQ#4886816 RK>http://www.kron.f2s.com - Грёзы, Двери, Авиация... RK>Отправлено через сервер Talk.Ru - http://www.talk.ru -- Victor Wagner vitus@ice.ru Programmer Office:7-(095)-785-09-72 Communiware.Net Home: 7-(095)-135-46-61 http://www.communiware.net http://www.ice.ru/~vitus --- ifmail v.2.15dev5 * Origin: AG Telecom news2 server (2:5020/400) Вернуться к списку тем, сортированных по: возрастание даты уменьшение даты тема автор
Архивное /ru.perl/13404913ef79d.html, оценка из 5, голосов 10
|