Наши пользователи часто задают вопрос: Как мне отфильтровать из в своей ленты / канала посты, содержащие сторонние ссылки?
Если ваша задача - не удалять посты целиком, а только удалить или заменить в них ссылки, читайте эту статью.
Рассмотрим пример. Предположим, вы пересылаете из Канала А в Канал Б. Вы хотите, чтобы посты с Канала А, содержащие хотя бы одну ссылку, не пересылались.
Это можно сделать двумя способами:
Способ 1. Убирать все посты, содержащие ссылки
Эту задачу можно решить с помощью создания фильтров по регулярному выражению. Фильтры будут проверять наличие любых кликабельных ссылок (тегов <a> и ссылок, начинающихся на http и https).
Откройте пересылку, к которой хотите применить фильтрацию;
В списке настроек найдите "Фильтры";
Создайте 2 фильтра:
Тип фильтра: 🔍По регулярному выражению
Значение (скопируйте и вставьте): .*<a[^<]+</a>.*
Снимите галочку слева от значка лупы
Тип фильтра: 🔍По регулярному выражению
Значение (скопируйте и вставьте): .*https?:\/\/\S+.*
Снимите галочку слева от значка лупы
Создайте фильтр 🔍По регулярному выражению
Введите .*<a[^<]+</a>.* уберите галочку и сохраните
Создайте второй фильтр .*https?:\/\/\S+.*
Для @username (не добавленных ботом):
Тип фильтра: 🔍По регулярному выражению
Значение (скопируйте и вставьте): .*@([a-zA-Z0-9=&_\-]+).*
Снимите галочку слева от значка лупы
Введите .*@([a-zA-Z0-9=&_\-]+).* уберите галочку и сохраните
Способ 2. Убирать посты с конкретной ссылкой
Для начала включите генерацию отчёта об обработке. Потом нужно посмотреть, как эта ссылка выглядит для бота.
В чате с @junction_bot отправьте команду /track и ссылку на исходное сообщение.
Откройте исходный код сообщения, который пришлёт бот. Это текст, содержащий специальные символы html-разметки, отвечающие за форматирование сообщения.
Найдите фрагмент со ссылкой (например <a href=...>) и скопируйте его.
Перейдите в Настройки пересылки > Фильтры
Создайте новый фильтр 🎯По текстовому совпадению и вставьте скопированный фрагмент со ссылкой.
Снимите галочку слева от значка лупы и сохраните.
Пример обычного текстового фильтра: <a href="https://www.junctionbot.io">Лучший бот</a>
Отправьте боту команду отправьте команду /track и ссылку на исходное сообщение. Скопируйте код ссылки целиком.
Создайте новый фильтр 🎯По текстовому совпадению, снимите галочку и сохраните
Готово! Теперь посты, содержащие ссылку <a href="https://www.junctionbot.io">Лучший бот</a> не будут приходить в канал вообще.
Напомним, что если ваша задача - не удалять посты целиком, а только удалить или заменить в них ссылки, читайте эту статью.