Форумы Форум www.proxomitron.ru
Все о программе Proxomitron
Главная  • FAQ для форума  •  Поиск  •  Пользователи  •  Группы   •  Регистрация  •  Профиль  •  Личные сообщения  •  Вход
 Commented Ad Killer
 Сайт -> Форумы » Фильтры
Следующая тема
Предыдущая тема

Новая тема  Ответить
Автор Сообщение
chAlx
Moderator
Moderator


Зарегистрирован: 30.06.2004
Сообщения: 2635
Откуда: SPb

СообщениеДобавлено: Чт, Июн 08 2006 17:05 Цитировать |  |  | 

Я не называл процесс изготовления Kill JS Banners [SSL] фигнёй, а писал, что мне сложно его понять и что он так же плох, как и мой на тот момент (т.к. оба выросли из оригинального). Вот топик.
К началу Профиль Сообщение
Unknown Mystic
Platinum Member
Platinum Member


Зарегистрирован: 26.09.2005
Сообщения: 471
Откуда: г. Мытищи, Московская обл.

СообщениеДобавлено: Чт, Июн 08 2006 18:25 Цитировать |  |  | 

Сдаюсь! Слово "фигня" ты не употреблял ;)

Не Kill JS Banners [SSL] это который по содержимому <noscript> скрипты убивает :)
К началу Профиль Сообщение ICQ
chAlx
Moderator
Moderator


Зарегистрирован: 30.06.2004
Сообщения: 2635
Откуда: SPb

СообщениеДобавлено: Сб, Сен 23 2006 10:51 Цитировать |  |  | 

Что-то этот фильтр меня перемудрил:

Код:
Name = "Commented Ad Killer [ALX] test"
Active = TRUE
Limit = 4096
Match = "($NEST(<!--, ($LST(CommentedAdList))\5 ,-->) )\1"
        "($TST((\0)=(?*))$LOG(R\0) | $SET(0=\5)$LOG(C\0))$LOG(G=[\1])"
        "*"
        "("
        "    $NEST(<!--, -->)&&"
        "    ?+{1,64}&&"
        "    <!--* $TST((\0)) *"
        ")\2$LOG(G=={\2})"
        "(^ </script>)"
        "$LOG(G==={\2})"
Replace = "\1"
          "<!-- Commented ad killed -->"
          "\2"


тест:
Цитата:
<!--Rating@Mail.ru LOGO -->
aaa
<!--/Rating@Mail.ru LOGO -->
bbbb
<!-- AdRiver -->
zzzz


Если нажать на Test с таким текстом, в логе получается жмуть какая-то: фильтр перезапускается много раз с разных мест и работает совсем не так, как планировалось.
К началу Профиль Сообщение
chAlx
Moderator
Moderator


Зарегистрирован: 30.06.2004
Сообщения: 2635
Откуда: SPb

СообщениеДобавлено: Сб, Сен 23 2006 22:58 Цитировать |  |  | 

С THG наконец-то работает:

Код:
Name = "Commented Ad Killer [ALX]"
Active = TRUE
Limit = 4096
Match = "($NEST(<!--, ($LST(CommentedAdList))\5 ,-->))\1"
        "$TST((\0)=(?*))"
        "*"
        "("
        "$NEST(<!--, -->(^ </script>))&&"
        "?+{1,64}&&"
        "<!--* $TST((\0)) *"
        ")\2"
Replace = "\1"
          "<!-- Commented ad killed -->"
          "\2"


Использование $SET(0=...) в блоклисте снова обязательно. Иначе получаются побочные эффекты, которые трудно обнаружить и обойти.

Также убрана декоративная обработка переводов строки. Раньше комменты на отдельных строках такими и оставались, теперь все получаются в одну строчку. Это позволяет избавиться от нескольких лишних циклов проверки всего условия.

Дополнил тестовый пример.

Сам блоклист тоже изрядно обновился; выложу позже в файлах.
К началу Профиль Сообщение
unreal666
Silver Member
Silver Member


Зарегистрирован: 21.10.2005
Сообщения: 149
Откуда: Владивосток

СообщениеДобавлено: Сб, Сен 30 2006 22:07 Цитировать |  |  | 

Так какая- последня версия этого фильтра? Того, который в последней сборке, или этот?
К началу Профиль Сообщение
chAlx
Moderator
Moderator


Зарегистрирован: 30.06.2004
Сообщения: 2635
Откуда: SPb

СообщениеДобавлено: Пн, Окт 02 2006 10:45 Цитировать |  |  | 

Фильтр более последний этот, но блоклист к нему я так и не выложил. I'll do it ASAP.
К началу Профиль Сообщение
WRFan
Silver Member
Silver Member


Зарегистрирован: 26.07.2006
Сообщения: 141

СообщениеДобавлено: Пн, Окт 02 2006 11:14 Цитировать |  |  | 

имхо такие комменты убирать не реалистично, ужасно затормаживает комп, 100%-ное cpu использование. сначала я попробовал так:

Код:

[Patterns]
Name = "Kill Ad Tags"
Active = TRUE
Bounds = "$NEST(<!-- $LST(FilterAds) -->,<!-- (/|) $LST(FilterAds) -->)"
Limit = 3000
Match = "\1"



но проблема в том, что часто в тэгах стоит больше, чем одно слово. а если добавить звёздочки до и после списка ключевых слов, комп начинает умирать, прокс все ресурсы сжирает. а если уменьшить список, то это бесполезно. имхо есть две возможности - создать топик, куда все могут постить полные списки комментов, найденных в сорс кодах, т.е. без ключевых слов, а действительно целые ad тэги. или уничтожать внутренности тэгов, оставляя сами ad тэги интактными. там же обычно просто яваскрипты, формы и урлы, вот их и надо $NEST-ать: $NEST(<a\shref,*$LIST...,*</a>) и т.д. имхо самое лучшее решение. я раньше пытался создать список всех эд комментов, набралось так 3 дюжины, но постоянно новые появляются
К началу Профиль Сообщение Отправить e-mail
unreal666
Silver Member
Silver Member


Зарегистрирован: 21.10.2005
Сообщения: 149
Откуда: Владивосток

СообщениеДобавлено: Пн, Окт 02 2006 12:20 Цитировать |  |  | 

chAlx писал(а):
Фильтр более последний этот, но блоклист к нему я так и не выложил. I'll do it ASAP.

Блок-лист меня не волнует. Я и сам могу его исправить.
Просто фильтр, который идет в последней сборке, иногда неправильно работает. Захватывает лишнее.
К началу Профиль Сообщение
unreal666
Silver Member
Silver Member


Зарегистрирован: 21.10.2005
Сообщения: 149
Откуда: Владивосток

СообщениеДобавлено: Пн, Окт 02 2006 12:22 Цитировать |  |  | 

И вопросы.

Почему конструкция $TST((\0)) работает, а $TST(\0) - нет ?
Где уже встречал про эту фигню, а где - не помню.
К началу Профиль Сообщение
chAlx
Moderator
Moderator


Зарегистрирован: 30.06.2004
Сообщения: 2635
Откуда: SPb

СообщениеДобавлено: Пн, Окт 02 2006 12:36 Цитировать |  |  | 

WRFan:
Цитата:
имхо такие комменты убирать не реалистично

Раньше надо было писать; фильтр уже шестой месяц работает.
Цитата:
или уничтожать внутренности тэгов, оставляя сами ad тэги интактными.

Именно так и работает.

unreal666:
Цитата:
Блок-лист меня не волнует. Я и сам могу его исправить.

Во-во: исправить и.. выложить. ;)
Цитата:
Почему конструкция $TST((\0)) работает, а $TST(\0) - нет ?

Обе работают, только по-разному.
Вкратце суть в том, что при использовани скобок переменная раскрывается в своё значение, даже если она установлена через $SET(). Вот инфо.
К началу Профиль Сообщение
unreal666
Silver Member
Silver Member


Зарегистрирован: 21.10.2005
Сообщения: 149
Откуда: Владивосток

СообщениеДобавлено: Пн, Окт 02 2006 15:00 Цитировать |  |  | 

Все-таки непонятно, как работают эти конструкции в фильтре, который идет с последней сборкой.
Код того фильтра:
Код:
[Patterns]
Name = "Commented Ad Killer [ALX]"
Active = TRUE
Limit = 4096
Match = "($NEST(<!--, ($LST(CommentedAdList))\5 ,-->) )\1"
        "($TST((\0)=(?*)) | $SET(0=\5))"
        "*"
        "("
        "    ($NEST(<!--, -->))\3&&"
        "    ?+{1,64}&&"
        "    <!--* $TST((\0)) *"
        ")\2"
        "(^ </script>)"
Replace = "\1"
          "<!-- Commented ad killed -->"
          "\2"


Если входной текст такой:
Код:
<!--Rating@Mail.ru LOGO-->
<a target=_top href="http://top.mail.ru/jump?from=282896"><img src="http://top.list.ru/counter?id=282896;t=52;l=1" border=0 height=1 width=1 alt="Рейтинг@Mail.ru"><br></a>
<!--/Rating@Mail.ru LOGO-->
</td>

<td width="50%">
<!--( content-->

То на выходе получаем такое:
Код:
<!--Rating@Mail.ru LOGO-->
<!-- Commented ad killed -->
<!--/Rating@Mail.ru LOGO-->

Т.е. почему-то захватывается все.
P.S.
В блок-листе для этого коммента такое:
Rating@Mail.ru LOGO $SET(0=/LOGO)

Изменил для теста фильтр на такой:

[Patterns]
Name = "Commented Ad Killer [ALX] test"
Active = FALSE
Limit = 4096
Match = "($NEST(<!--, ($LST(CommentedAdList))\5 ,-->) )\1"
"($TST((\0)=(?*)) | $SET(0=\5))"
"(*"
"("
" ($NEST(<!--, -->))\3&&"
" (?+{1,64})\4&&"
" <!--* $TST((\0)) *"
")\2"
"(^ </script>))\6$SET(a1=$GET(a1)\r\n----------\r\n[\6] \r\nЗахват [\3] [\4] [\0])"
Replace = "\1"
"<!-- Commented ad killed -->"
"\2"
"\r\n$GET(a1)"


На выходе получил такое:
Код:

<!--Rating@Mail.ru LOGO-->
<!-- Commented ad killed -->
<!--/Rating@Mail.ru LOGO-->

----------
[<a target=_top href="http://top.mail.ru/jump?from=282896"><img src="http://top.list.ru/counter?id=282896;t=52;l=1" border=0 height=1 width=1 alt="Рейтинг@Mail.ru"><br></a>
<!--/Rating@Mail.ru LOGO-->]
Захват [<!--/Rating@Mail.ru LOGO-->] [] [/LOGO]
----------
[<a target=_top href="http://top.mail.ru/jump?from=282896"><img src="http://top.list.ru/counter?id=282896;t=52;l=1" border=0 height=1 width=1 alt="Рейтинг@Mail.ru"><br></a>
<!--/Rating@Mail.ru LOGO-->]
Захват [<!--/Rating@Mail.ru LOGO-->] [<!--/Rating@Mail.ru LOGO-->] [/LOGO]
----------
[<a target=_top href="http://top.mail.ru/jump?from=282896"><img src="http://top.list.ru/counter?id=282896;t=52;l=1" border=0 height=1 width=1 alt="Рейтинг@Mail.ru"><br></a>
<!--/Rating@Mail.ru LOGO-->]
Захват [<!--/Rating@Mail.ru LOGO-->] [<!--/Rating@Mail.ru LOGO-->] [/LOGO]
----------
[<a target=_top href="http://top.mail.ru/jump?from=282896"><img src="http://top.list.ru/counter?id=282896;t=52;l=1" border=0 height=1 width=1 alt="Рейтинг@Mail.ru"><br></a>
<!--/Rating@Mail.ru LOGO-->
</td>

<td width="50%">
<!--( content-->]
Захват [<!--( content-->] [<!--/Rating@Mail.ru LOGO-->] [/LOGO]
----------
[<a target=_top href="http://top.mail.ru/jump?from=282896"><img src="http://top.list.ru/counter?id=282896;t=52;l=1" border=0 height=1 width=1 alt="Рейтинг@Mail.ru"><br></a>
<!--/Rating@Mail.ru LOGO-->
</td>

<td width="50%">
<!--( content-->]
Захват [<!--( content-->] [<!--( content-->] [/LOGO]
----------
[<a target=_top href="http://top.mail.ru/jump?from=282896"><img src="http://top.list.ru/counter?id=282896;t=52;l=1" border=0 height=1 width=1 alt="Рейтинг@Mail.ru"><br></a>
<!--/Rating@Mail.ru LOGO-->
</td>

<td width="50%">
<!--( content-->]
Захват [<!--( content-->] [<!--( content-->] [/LOGO]
----------
[<a target=_top href="http://top.mail.ru/jump?from=282896"><img src="http://top.list.ru/counter?id=282896;t=52;l=1" border=0 height=1 width=1 alt="Рейтинг@Mail.ru"><br></a>
<!--/Rating@Mail.ru LOGO-->]
Захват [<!--/Rating@Mail.ru LOGO-->] [<!--( content-->] [Rating@Mail.ru LOGO]


Странно он как-то захватывает.
Еще и в последнем блоке почему-то изменилось значение переменной \0.
К началу Профиль Сообщение
chAlx
Moderator
Moderator


Зарегистрирован: 30.06.2004
Сообщения: 2635
Откуда: SPb

СообщениеДобавлено: Пн, Окт 02 2006 16:33 Цитировать |  |  | 

unreal666:
Цитата:
Все-таки непонятно, как работают эти конструкции в фильтре, который идет с последней сборкой.

Ну так поэтому он и заменён новым. Это то, про что написано "получаются побочные эффекты, которые трудно обнаружить и обойти".

Вдаваться не буду, там такой фарш.. Вкратце так: конструкция ($TST((\0)=(?*)) | $SET(0=\5)) срабатывала дважды и весь фильтр с этого места тоже. Поэтому и решено отказаться от этой "автоматики" (с автоопределением закрывающих границ).
К началу Профиль Сообщение
unreal666
Silver Member
Silver Member


Зарегистрирован: 21.10.2005
Сообщения: 149
Откуда: Владивосток

СообщениеДобавлено: Чт, Окт 05 2006 07:13 Цитировать |  |  | 

Да я понял, что срабатывает дважды. Только не понял почему при такой конструкции фильтра этот кусок фильтра срабатывает дважды.
К началу Профиль Сообщение
chAlx
Moderator
Moderator


Зарегистрирован: 30.06.2004
Сообщения: 2635
Откуда: SPb

СообщениеДобавлено: Чт, Окт 05 2006 09:02 Цитировать |  |  | 

unreal666:

Потому что конец фрагмента в блоклисте установлен неверно (для данного случая). Фильтр находит начало и пытается дойти до закрывающего коммента, попутно устанавливая все переменные. Потом откатывается, не найдя /LOGO, и начинает искать /Rating@Mail.ru LOGO (т.к. конструкця вида a(x|y)b сначала находит a, потом ищет xb, а если не находит, то yb). Вот и получается два раза.

А где он выходит за границы $NEST(<!--, -->)&& -- сам посмотри. Там на это звёздочек хватает..
К началу Профиль Сообщение
unreal666
Silver Member
Silver Member


Зарегистрирован: 21.10.2005
Сообщения: 149
Откуда: Владивосток

СообщениеДобавлено: Чт, Окт 05 2006 16:22 Цитировать |  |  | 

Цитата:
Вот и получается два раза.

Точно. Я протупил.
Только вот что. Если судить по моему логу (по последнему блоку):
- А почему же тогда в ($NEST(<!--, -->)) попало значение <!--/Rating@Mail.ru LOGO-->, а в (?+{1,64}) попало значение <!--( content--> ?
С какого перепугу он захватил код до <!--( content--> ?
- По этому блоку видно, что в переменную \6 попал текст до <!--/Rating@Mail.ru LOGO--> включительно. Но полное соответствие почему-то соответствует до текста <!--( content-->. Получается что при предыдущем сравнении (до отката) он захватил полный текст, но при повторном (удачном) сравнении он этот текст из сравнения не исключил.
К началу Профиль Сообщение
chAlx
Moderator
Moderator


Зарегистрирован: 30.06.2004
Сообщения: 2635
Откуда: SPb

СообщениеДобавлено: Чт, Окт 05 2006 17:14 Цитировать |  |  | 

unreal666:

Что-то меня не тянет сейчас с этим разбираться.. Тут нужен Unknown Mystic ;)

Скорее всего дело не в расширенном блоке от предыдущей проверки, а в каком-то шаблоне типа (^ </script>) или замыкающей звёздочки.
К началу Профиль Сообщение
Unknown Mystic
Platinum Member
Platinum Member


Зарегистрирован: 26.09.2005
Сообщения: 471
Откуда: г. Мытищи, Московская обл.

СообщениеДобавлено: Пт, Ноя 17 2006 22:29 Цитировать |  |  | 

Сказали бы... :))

Значит так.
Во-первых:
Выражения вида expr1(expr2&&expr3)expr4 прокс проверяет следующим образом:
Сначала захватывает кусок, соответствующий expr1, затем expr2, затем expr4 и только потом проверяет, удовлетворяет ли 2-й захваченный кусок выражению expr3. Отсюда "странности" логе.

Во-вторых:
С тем, почему прокс вырезает весь текст сложнее. Похоже тут все-таки бага...
Пусть есть выражение:
(expr1|expr2)expr3(expr4&&expr5)
Причем, при совпадении expr1, expr5 в данном контексте никогда не совпадет.
В этом случае будет вырезана максимально длинная последовательность из реально совпавшей и наиболее длинной, удовлетворяющей expr1expr3expr4.
Например:
Код:
Match = "(ab|a)\1"
        "\2"
        "(&&$TST((\1)=a))\3"
Replace = "|\1\2\3|"

На последовательности abcdabcdabcd.

Ну и в-третьих (насчет вредности лишних пробелов):
Предлагаю сравнить 2 фильтра:
Код:
Name = "Commented Ad Killer [ALX] test 1"
Active = FALSE
Limit = 4096
Match = "($NEST(<!--, ($LST(CommentedAdList))\5 ,-->) )\1"
"($TST((\0)=(?*)) | $SET(0=\5))"
"(*"
"("
" ($NEST(<!--, -->))\3&&"
" (?+{1,64})\4&&"
" <!--* $TST((\0)) *"
")\2"
"(^ </script>))\6$SET(a1=$GET(a1)\r\n----------\r\n[\6] \r\nЗахват [\3] [\4] [\0])"
Replace = "\1"
"<!-- Commented ad killed -->"
"\2"
"\r\n$GET(a1)"

Name = "Commented Ad Killer [ALX] test 2"
Active = FALSE
Limit = 4096
Match = "($NEST(<!--, ($LST(CommentedAdList))\5 ,-->) )\1"
"($TST((\0)=(?*)) | $SET(0=\5))"
"(*"
"("
"($NEST(<!--, -->))\3&&"
" (?+{1,64})\4&&"
" <!--* $TST((\0)) *"
")\2"
"(^ </script>))\6$SET(a1=$GET(a1)\r\n----------\r\n[\6] \r\nЗахват [\3] [\4] [\0])"
Replace = "\1"
"<!-- Commented ad killed -->"
"\2"
"\r\n$GET(a1)"

(Отличаются на 1 пробел в 5-й строке Match) на приведенном ранее примере:
Код:
<!--Rating@Mail.ru LOGO-->
<a target=_top href="http://top.mail.ru/jump?from=282896"><img src="http://top.list.ru/counter?id=282896;t=52;l=1" border=0 height=1 width=1 alt="Рейтинг@Mail.ru"><br></a>
<!--/Rating@Mail.ru LOGO-->
</td>

<td width="50%">
<!--( content-->

Думаю результат замены весьма нагляден ;)
К началу Профиль Сообщение ICQ
Akustik
Newbee
Newbee


Зарегистрирован: 29.11.2006
Сообщения: 10

СообщениеДобавлено: Сб, Янв 13 2007 21:54 Цитировать |  |  | 

не знаю какую версию этого фильтра считать окончательной, но у меня стоит вот такая версия:
Код:
Name = "Commented Ad Killer [ALX]"
Active = TRUE
Multi = TRUE
Limit = 4096
Match = "($NEST(<!--, ($LST(CommentedAdList-RE))\5 ,-->))\1"
        "$TST((\0)=(?*))"
        "*"
        "("
        "$NEST(<!--, -->(^ </script>))&&"
        "?+{1,64}&&"
        "<!--* $TST((\0)) *"
        ")\2"
Replace = "\1"
          "<!-- Commented ad killed -->"
          "\2"

и она вроде не вырезает блоки если \1 = \2
т.е. если в блоклисте имеем
Код:
TopList COUNTER            $SET(0=/TopList COUNTER)
TopList COUNTER            $SET(0=TopList COUNTER)

то вот такая конструкция не вырежится:
Код:
<!--TopList COUNTER-->
            <INS by="Fix_Nosey_JavaScript" ></INS>
            <SCRIPT LANGUAGE="JavaScript" > d=document;js=10;a='';a+=';r='+escape(d.toString(9))//--></SCRIPT>
            <SCRIPT LANGUAGE="JavaScript1.1" > js=11;a+=';j='+navigator.javaEnabled()//--></SCRIPT>
            <INS by="Fix_Nosey_JavaScript" ></INS>
            <INS by="Fix_Nosey_JavaScript" ></INS>
            <INS by="Fix_Nosey_JavaScript" ></INS>
            <SCRIPT LANGUAGE="JavaScript1.2" > js=12;s=screen;a+=';s='+s.width+'*'+s.heighta+=';d='+(s.toString(9)?s.toString(9):s.toString(9))//--></SCRIPT>
            <SCRIPT LANGUAGE="JavaScript1.3" > js=13//--></SCRIPT>
            <NOSCRIPT></NOSCRIPT>
            <!--TopList COUNTER-->

а такая вырежится(разница только в слеше в самом конце)... ПРИЧЕМ в HTTP Message Log видно что кусок подходит под критерии блоклиста....
Код:
<!--TopList COUNTER-->
            <INS by="Fix_Nosey_JavaScript" ></INS>
            <SCRIPT LANGUAGE="JavaScript" > d=document;js=10;a='';a+=';r='+escape(d.toString(9))//--></SCRIPT>
            <SCRIPT LANGUAGE="JavaScript1.1" > js=11;a+=';j='+navigator.javaEnabled()//--></SCRIPT>
            <INS by="Fix_Nosey_JavaScript" ></INS>
            <INS by="Fix_Nosey_JavaScript" ></INS>
            <INS by="Fix_Nosey_JavaScript" ></INS>
            <SCRIPT LANGUAGE="JavaScript1.2" > js=12;s=screen;a+=';s='+s.width+'*'+s.heighta+=';d='+(s.toString(9)?s.toString(9):s.toString(9))//--></SCRIPT>
            <SCRIPT LANGUAGE="JavaScript1.3" > js=13//--></SCRIPT>
            <NOSCRIPT></NOSCRIPT>
            <!--/TopList COUNTER-->


как исправить этот фильтр или может быть поставить вообще другой?
К началу Профиль Сообщение ICQ
chAlx
Moderator
Moderator


Зарегистрирован: 30.06.2004
Сообщения: 2635
Откуда: SPb

СообщениеДобавлено: Сб, Янв 13 2007 23:39 Цитировать |  |  | 

Код:
Name = "Commented Ad Killer [ALX]"
Active = TRUE
Limit = 4096
Match = "($NEST(<!--, ($LST(CommentedAdList)) ,-->))\1"
        "$TST((\0)=(?*))"
        "*"
        "("
        "$NEST(<!--, -->(^ </script>))&&"
        "?+{1,100}&&"
        "<!--*$TST((\0))*"
        ")\2"
Replace = "\1"
          "<!-- Commented ad killed -->"
          "\2"


CommentedAdList.txt:
Код:
#
# Proxomitron commented ad keywords list (NOADDURL)
# Used by "Commented Ad Killer [ALX]"
#
# Format:  {open_mask} $SET(0={close_keyword})
#   {open_mask} is used in $NEST(<!--,  $LST()  , -->)
#   {close_keyword} is used in $NEST(<!--,* $TST((\0)) * , -->)
#   Use ?+ in {open_mask} to force greedy match
#   Example:
#   begin of Top100 ?+   $SET(0=end of Top100)
#


# Russian Edition system URLs:
$LST(CommentedAdList-RE)


# User added ad comments:


CommentedAdList-RE.txt
Код:

#
# Proxomitron commented ad keywords list - Russian Edition (NOADDURL)
# Used by "Commented Ad Killer [ALX]"
#
# Don't modify! Please use "Lists\ComentedAdList.txt" instead.
#

ONLINECHANGE   $SET(0=ONLINECHANGE)
TopList COUNTER   $SET(0=TopList COUNTER)
AWLA   $SET(0=AWLA)
- SmartLog -   $SET(0=- SmartLog -)
bigmir\)net TOP 100   $SET(0=bigmir\)net TOP 100)
bigmir\)net TOP 100 GIF 1x1 begin   $SET(0=bigmir\)net TOP 100 GIF 1x1 end)

Globo Clicks 4.0   $SET(0=Globo Clicks 4.0)


SpyLOG (v2|) f:?+   $SET(0=SpyLOG)
HotLog   $SET(0=/HotLog)

begin of Top100 ?+   $SET(0=end of Top100)

TOPCTO counter begin   $SET(0=TOPCTO counter end)
TOPCTO logo begin   $SET(0=TOPCTO logo end)
logo TOPCTO begin   $SET(0=logo TOPCTO end)

Start Bravenet.com Service Code   $SET(0=End Bravenet.com Service Code)
BRAVENET INJECTION   $SET(0=BRAVENET INJECTION)

AdRiver code START ?+   $SET(0=AdRiver code END)

LiveInternet counter   $SET(0=/LiveInternet)
LiveInternet logo   $SET(0=/LiveInternet)

Rating@Mail.ru COUNTER   $SET(0=/COUNTER)
##Rating@Mail.ru LOGO   $SET(0=/LOGO)
##Rating@Mail.ru LOGO   $SET(0=/Rating@Mail.ru LOGO)
Rating@Mail.ru LOGO   $SET(0=LOGO)

ExAccess code BEGIN   $SET(0=ExAccess code END)
Mestkom code BEGIN   $SET(0=Mestkom code END)

AdMedia Pop-under, Rich-media code START   $SET(0=AdMedia Pop-under, Rich-media code END)
RAX (counter|logo)   $SET(0=/RAX)
Rating.ru COUNTER   $SET(0=/COUNTER)
google//   $SET(0=/google//)

begin of Rambler's Top100 code   $SET(0=end of Top100 code)
begin of Rambler Top100 logo   $SET(0=end of Rambler Top100 logo)

news list advert begin   $SET(0=news list advert end)
START ADCYCLE ?+   $SET(0=END ADCYCLE)
AdMedia * code START   $SET(0=AdMedia)

RLE code START   $SET(0=RLE code END)
RLE Action Analyser code START   $SET(0=RLE Action Analyser code END)

begin of TopShop (counter|logo|)   $SET(0=end of TopShop)

Begin RB2 code   $SET(0=end RB2 code)
PROext: Top 1000 Begin   $SET(0=PROext: Top 1000 End)

BelRus code BEGIN   $SET(0=BelRus code END)
NBN CODE START   $SET(0=NBN CODE END)

BEGIN CODE Fair.ru ?+   $SET(0=END CODE Fair.ru)

#Русские символы обрабатываются корректно, если строка блокфайла начинается не с них:
(реклама)   $SET(0=конец реклама)

MBE.Ru code begin   $SET(0=MBE.Ru code end)
AdRevolver code begin   $SET(0=AdRevolver code end)
SoftBN start   $SET(0=SoftBN end)

AdMedia Netvideo, TopLine code START   $SET(0=AdMedia Netvideo, TopLine code END)

Banner Network Engine "Yadro.ru"   $SET(0=/Banner Network Engine "Yadro.ru")

ADVMAKER.RU POP-UNDER BEGIN   $SET(0=ADVMAKER.RU POP-UNDER END)


Тестовый пример


Последний раз редактировалось: chAlx (Чт, Янв 22 2009 11:30), всего редактировалось 3 раз(а)
К началу Профиль Сообщение
chAlx
Moderator
Moderator


Зарегистрирован: 30.06.2004
Сообщения: 2635
Откуда: SPb

СообщениеДобавлено: Сб, Янв 13 2007 23:47 Цитировать |  |  | 

Akustik:

Спасибо за напоминание -- всё забывал выложить.

Твоя версия не совсем точная -- похоже на пытливые изыскания ;) Но с моей тоже надо доразобраться..

Addon:
Обновил тестовый пример -- там как раз есть кусок с \1=\2.
К началу Профиль Сообщение
Показать сообщения:      
 
Новая тема  Ответить

 Перейти:   




Следующая тема
Предыдущая тема
Вы можете начинать темы
Вы можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете голосовать в опросах


P o w e r e d b y p h p B B © p h p B B G r o u p :: T h e m e b a s e d o n FI T h e m e :: Часовой пояс: GMT + 3