| Новости | 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)}]
}