|
|
ru.perl- RU.PERL ---------------------------------------------------------------------- From : Roman =KRoN= Karshiev 2:5020/400 15 Jul 2002 15:01:02 To : All Subject : Регексп - замена по хешу. -------------------------------------------------------------------------------- c:\>deep.exe Есть хеш с парами "что менять"=>"на что менять". Hапример, аббревиатуры заменять на код их расшифровки или ключевые слова на ссылки на них. Менять надо всюду, кроме внутренностей ссылок и тэгов. Я пока делаю в таком духе. 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ельзя ли как-то ускорить процесс, например, в PHP в preg_replace можно одним вызовом функции сразу поменять массив на массив... Чтение perldoc perlre не просве(я)тило :) Заранее спасибо :) ....Глубина-глубина, я не твой... =KRoN=, http://kron.da.ru, ICQ#4886816 --- ifmail v.2.15dev5 * Origin: Demos online service (2:5020/400) Вернуться к списку тем, сортированных по: возрастание даты уменьшение даты тема автор
Архивное /ru.perl/11346b692470c.html, оценка из 5, голосов 10
|