|
|
ru.perl- RU.PERL ---------------------------------------------------------------------- From : Andrey Sapozhnikov 2:5020/400 15 Jul 2002 18:27:08 To : Roman =KRoN= Karshiev Subject : Re: Регексп - замена по хе шу. -------------------------------------------------------------------------------- Roman =KRoN= Karshiev wrote: > Есть хеш с парами "что менять"=>"на что менять". > Я пока делаю в таком духе. > > for $abbr (reverse sort keys %abbr) > { > $s =~ s!(<a\s+.+?</a>|<\w.+?>|\Q$abbr\E)!$abbr{$1}?"<acronym > title=\"$abbr{$1}\">$1</acronym>":$1!gsem; > } > > Hо получается ужасно долго (когда ключевых слов сотни, а обрабатываемые > строки на десяток килобайт. А хочется вообще тысячи ключевых слов). Hельзя > ли как-то ускорить процесс А нафига было в цикл обертывать? Вот эта строка: $s =~ s!(<a\s+.+?</a>|<\w.+?>|\Q$abbr\E)!$abbr{$1}?"<acronym title=\"$abbr{$1}\">$1</acronym>":$1!gsem; и так меняет сразу все включения. Андрей --- ifmail v.2.15dev5 * Origin: Demos online service (2:5020/400) Вернуться к списку тем, сортированных по: возрастание даты уменьшение даты тема автор
Архивное /ru.perl/5284195af1dd.html, оценка из 5, голосов 10
|