Новости | FAQ | Авторы | Документация | В действии | Библиотека |
Инструменты | Полезные ссылки | Хостинги | Скачать | Примеры | Форум |
Misha v.3 04.08.2003 08:46 / 04.08.2003 12:22
1. одним матчем вырезают теги с аттрибутами по шаблону, причем вырезают их так, чтобы вырезанные теги оказались в отдельной таблице, а в исходном месте остался какой-нить идентификатор, позволяющий произвести обратную замену.$str[тут то, что обрабатываем] # шаблон для выкусывания js $jspattern[<script.+?</script>] # ищем все вхождения и запоминаем их в таблице $js $js[^str.match[($jspattern)][gi]] ^if($js){ # если что-то было найдено, то матчим еще раз и заменяем каждое вхождение # на строку {js} (должно быть по возможности уникальным. # если в исходном тексте встретится такая последовательность, то будет плохо :) $str[^str.match[($jspattern)][gi]{{js}}] } # <<< тут вставляем пачку матчей в которых делаем с нашей $str что душе угодно # возвращаем на место javascript-ы ^if($js){ $str[^str.match[{js}][g]{$js.1^js.offset(1)}] }