Senler Docs
senler.ru
  • Документация
  • Начало работы
    • О сервисе
    • Терминология
    • Регистрация
  • Проект
    • О проектах
    • Тарифы
    • Уведомления
  • Каналы
    • ВКонтакте
      • Подключение
      • Настройка сообщества
      • Получение шаблонов ботов и подписной страницы
      • Подписчики
        • Способы сбора базы подписчиков
        • Статусы
        • Действия с подписчиками
        • Импорт подписчиков
        • Экспорт подписчиков
        • Черный список
        • Способы отписаться
        • Обновление данных
        • Источники подписки
      • Группы подписчиков
        • Создание группы подписчиков
        • Настройки группы
        • Автоматическая подписка при переходе
        • Страница после подписки
        • Рекомендации для баннеров
        • Платная подписка
        • Автоисключение
        • Удаление группы
      • Рассылки
        • Создание рассылки
        • Разовая рассылка
        • Целевая рассылка
        • Статусы рассылок
        • Шаблоны
        • Статистика рассылок
        • Открываемость
        • Ускоренная рассылка
        • Удаление
      • Чат-боты
        • Создание чат-бота
        • Блок - сообщение
        • Блок - таймер
        • Блок - действие
        • Блок - условие
        • Блок - группа условий
        • Клавиатура
        • Карусель
        • Переменные в ботах
        • Ответ на сообщение
        • Реакции на сообщение
        • Прочтение сообщения
        • Переход по ссылке
        • Настройки
        • Зацикливание
        • Запуск чат-бота
        • Активация новых связей
        • Тестирование
        • Публикация изменений
        • Статистика
        • Копирование
        • Удаление
      • Вложения
      • Форматирование
      • Процессы
      • Триггеры
      • Метки
      • Переменные
        • Стандартные переменные
        • Глобальные переменные
        • Пользовательские переменные
      • Аналитика
        • Логирование действий в сообществе
        • Статистика
          • Воронки
        • Ретаргетинг ВКонтакте
        • Пиксель ВКонтакте
        • Яндекс Метрика
        • Google Analytics
        • Пиксель Facebook
        • Google Tag Manager
        • UTM-метки
        • UTM-генератор
        • REF-метки
        • Сквозная аналитика
      • Заказы
      • Интеграции
        • Интеграция с Prodamus
        • Интеграция с Robokassa
        • Интеграция с ApiX-Drive
        • Интеграция с Unitpay
        • Интеграция с VK Pay
        • Интеграция с ЮMoney
        • Интеграция с Пиксель ВКонтакте
        • Интеграция с Яндекс Метрика
        • Интеграция с Google Analytics
        • Интеграция с Facebook Pixel
        • Интеграция с Google Tag Manager
        • Интеграция с Google Sheets
        • Интеграция Уведомления в Telegram
        • Интеграция с ChatGPT (OpenAI)
    • Telegram
      • Подключение
      • Подписчики
        • Способы сбора базы подписчиков
        • Статусы
        • Действия с подписчиками
        • Импорт подписчиков
        • Экспорт подписчиков
        • Черный список
      • Группы подписчиков
        • Создание и настройки
        • Удаление
      • Рассылки
        • Создание рассылки
        • Разовая рассылка
        • Целевая рассылка
        • Статусы рассылок
        • Шаблоны
        • Статистика рассылок
        • Удаление
      • Чат-боты
        • Создание чат-бота
        • Блок - сообщение
          • Клавиатура
          • Ответ на сообщение
          • Переход по ссылке
          • Реакции на сообщение
          • Обработка callback запроса
        • Блок - таймер
        • Блок - действие
        • Блок - группа условий
        • Переменные в ботах
        • Настройки
        • Зацикливание
        • Запуск чат-бота
        • Активация новых связей
        • Тестирование
        • Публикация изменений
        • Статистика
        • Копирование
        • Удаление
      • Вложения
      • Форматирование
      • Процессы
      • Триггеры
      • Метки
      • Переменные
        • Стандартные переменные
        • Глобальные переменные
        • Пользовательские переменные
      • Аналитика
        • UTM-генератор
      • Интеграции
        • Интеграция Уведомления в Telegram
      • Проксирование
        • Серверы
  • Сервис
    • Мини-приложение ВКонтакте
      • Установка приложения
      • Главная страница
      • Подписные страницы
      • Мои подписки
      • Настройки
        • Вид главной страницы
        • Метрики
      • Виджеты
        • Создание виджета
        • Типы виджетов
        • Изображения
        • Аудитории
        • Массовые действия
        • Видимость
        • Публикация
        • Кеширование
      • Лендинги
        • Создание лендинга
        • Блоки
        • Текстовый редактор
        • Публикация изменений
        • Заявка с номером телефона
    • Партнерская программа
    • Отчёты
    • Корпоративным клиентам
    • Короткие ссылки
  • Помощь
    • Правила
      • Правила VK
    • FAQ
      • Общие вопросы
        • Как запретить сообщения от сообщества ВКонтакте?
        • Как разрешить сообщения от сообщества ВКонтакте?
        • Как отписаться от рассылок ВКонтакте?
        • Как получить идентификатор аудиозаписи?
        • Как получить идентификатор голосового сообщения?
        • Как получить ссылку на опрос?
        • Как получить идентификатор ответа в опросе?
        • Настройка сниппета
        • Не открывается ссылка на пост
        • Пишут слово Начать
        • Как получить токен в Telegram
        • Регулярные выражения
        • Удаление сообщений
        • Что такое мультиссылка?
        • Что такое теги?
        • Как узнать свой идентификатор в Telegram?
      • Вопросы о сообществах
        • Как подключить сообщество в Senler?
        • Кто подключил сообщество в Senler?
        • Как перенести сообщество?
        • Как отключить сообщество в Senler?
        • Удаление ключей API в сообществе ВКонтакте
      • Вопросы о рассылках
        • Не отправляются сообщения
        • Может массовая рассылка привести к блокировке сообщества?
      • Вопросы о подписчиках
        • Не добавляются подписчики
        • Не работает триггер
        • Почему важно хранить неактивных подписчиков?
      • Вопросы о чат-ботах
        • Бот не отвечает
        • Не отправляется определенный шаг
        • Не работает условие Ответ на сообщение
        • Изменение бота
        • Не открывается редактирование шага
      • Вопросы о сотрудниках
      • Вопросы о мини-приложении ВКонтакте
        • Почему показывается инструкция?
        • Почему не открывается приложение?
        • Как удалить приложение ВКонтакте?
        • Как вставить видео?
    • Ошибки
      • Ошибки VK
        • VK Oauth: Security Error
        • Only group admins have access to group tokens
        • Group is not allowed to send messages
        • Invalid request: modifying contacts in a shared group is not allowed
        • Error 1 - Unknown error occured
        • Error 5 - User authorization failed: invalid session
        • Error 10 - Internal server error
        • Error 15 - Access denied: group messages are disabled
        • Error 15 Access denied: share post forbidden
        • Error 15 - Access denied: no access to call this method
        • Error 15 - Access denied: at first group admin should install app widget in group
        • Error 15 - Access denied: no access to call this method. It cannot be called with current scopes
        • Error 27 - Group authorization failed: group revoke access for this token
        • Error 27 - Group authorization failed: group is banned
        • Error 100 - One of the parameters specified was missing or invalid: message is empty or invalid
        • Error 100 - One of the parameters specified was missing or invalid: file is undefined
        • Error 121 - Invalid hash
        • Error 129 - Invalid photo
        • Error 600 - Permission denied. You have no access to operations specified with given object(s)
        • Error 901 - Cant send messages for users without permission
        • Error 902 - Can't send messages to this user due to their privacy settings
        • Error 912 - This is a chat bot feature, change this status in settings
        • Error 914 - Message is too long
        • Error 936 - Contact not found
        • Error 2000 - Servers number limit is reached
        • Другие ошибки
      • Сетевые ошибки
        • Сайт отправил недействительный ответ или ERR_SSL_PROTOCOL_ERROR
        • Ошибка ERR_BLOCKED_BY_RESPONSE
        • Ошибка SSL_ERROR_ACCESS_DENIED_ALERT
        • Ошибка ERR_CONNECTION_REFUSED
        • Ошибка ERR_SSL_VERSION_INTERFERENCE
    • Обучающие материалы
    • Разработчикам
      • API
        • Версии API
        • Ключи доступа
        • Формирование подписи
        • Методы
          • Subscribers
            • add
            • del
            • get
            • statSubscribe
            • statCount
          • Subscriptions
            • get
            • add
            • edit
            • del
          • Utms
            • add
            • edit
            • del
            • get
            • getLink
            • statCount
            • statSubscribe
          • Deliveries
            • get
            • stat
            • statCount
          • Bots
            • get
            • getSteps
            • addSubscriber
            • delSubscriber
          • Vars
            • set
            • get
            • del
          • Vars_global
            • get
            • set
            • del
        • Возвращаемые ошибки
      • WebHook API
        • Серверы
        • Шаблоны
        • Обработка ответа запроса
      • Кнопка для сайта
      • Приложения
        • Создание приложения
        • Настройки
        • Руководство
        • Варианты интеграций
          • Шаг в чат-боте
          • Встроенная страница приложения
          • OAuth
        • Интеграции
          • Пользовательский интерфейс
          • Сохранение настроек
          • Чтение настроек
          • Вебхук
          • Публикация
          • Дополнительно
            • dev ссылка iframe
          • Пример #1. react ui
            • front dev
            • front prod
            • backend
          • Библиотеки
    • Техподдержка
Powered by GitBook
On this page
  1. Помощь
  2. FAQ
  3. Общие вопросы

Регулярные выражения

Регулярные выражения (или регулярные выражения, RegExp) представляют собой мощный инструмент для поиска, анализа и манипуляции текста с использованием шаблонов.

PreviousКак получить токен в TelegramNextУдаление сообщений

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

Шаблон бота с самыми распространенными регулярными выражениями можно скопировать по этой ссылке:

Основные понятия

  1. Составные части:

  • Обычные символы: Представляют собой сами себя и соответствуют точно таким же символам в тексте.

  • Метасимволы: Особые символы, представляющие классы или операции, такие как ., *, +, ?, [ ] и другие. Метасимволы можно вставить как обычные символы, если предварительно экранировать их с помощью обратного слеша \.

  1. Группы и объединение групп. Группы позволяют объединять части регулярного выражения вместе и применять операции ко всей группе. Например:

  • ^: соответствует началу строки.

  • $: соответствует концу строки.

  • (abc): Группа, соответствующая последовательности "abc".

  • a(bc): Группа, соответствующая "bc", но только если перед ней идет "a".

  1. Условный оператор или (|) Оператор | используется для создания альтернатив в регулярных выражениях. Например:

  • cat|dog: Соответствует "cat" или "dog".

  • (red|blue)car: Соответствует "redcar" или "bluecar".

Классы символов, диапазоны и квантификаторы

  1. Одиночные символы

Обычные символы в регулярных выражениях представляют собой сами себя и соответствуют точно таким же символам в тексте.

  1. Диапазоны символов

Диапазоны позволяют указать диапазон символов, который может соответствовать в тексте. Например:

  • [0-9] соответствует любой цифре.

  • [a-z] соответствует любой строчной букве.

  • [A-Z] соответствует любой заглавной букве.

  • [aeiou] соответствует любой из гласных букв.

  • [a-zA-Z] соответствует любой букве в верхнем или нижнем регистре.

  • [а-яёА-ЯЁ]: соответствует любой букве кириллицы, включая Ё.

  • [0-9a-fA-F] соответствует любой шестнадцатеричной цифре.

  1. Отрицание класса символов

Добавление ^ в начале класса символов инвертирует его, позволяя выбрать любой символ, кроме тех, что указаны в классе. Например:

  • [^0-9] соответствует любому символу, кроме цифры.

  1. Специальные классы символов

  • \d соответствует любой цифре (то же, что и [0-9]).

  • \D соответствует любому не цифровому символу.

  • \w соответствует любой букве или цифре (то же, что и [a-zA-Z0-9]).

  • \W соответствует любому не алфавитно-цифровому символу.

  • \s соответствует любому символу пробела (пробел, табуляция, новая строка).

  • \S соответствует любому символу, не являющемуся пробелом.

  1. Квантификаторы

Квантификаторы в регулярных выражениях определяют количество повторений предыдущего символа, символьного класса или группы символов. Они делают шаблоны более гибкими и могут существенно упростить создание более сложных выражений.

Основные квантификаторы:

  • * (звездочка): Позволяет нулю или более повторений предыдущего символа или группы символов. Пример: a* соответствует "a", "aa", "aaa" и так далее.

  • + (плюс): Требует одно или более повторений предыдущего символа или группы символов. Пример: b+ соответствует "b", "bb", "bbb" и так далее.

  • ? (вопросительный знак): Опциональный символ, который может встречаться ноль или один раз. Пример: colou?r соответствует "color" или "colour".

Квантификаторы с фиксированным числом повторений

  • {n}: Точное количество повторений. Пример: \d{3} соответствует ровно трем цифрам.

  • {n,}: Не менее n повторений. Пример: \w{2,} соответствует двум или более буквам, цифрам.

  • {n,m}: От n до m повторений. Пример: [a-zA-Z]{1,3} соответствует одной, двум или трём буквам в верхнем или нижнем регистре.

Инструменты для тестирования регулярных выражений

Существует множество онлайн-инструментов, которые помогут вам тестировать и проверять регулярные выражения.

Два самых удобных инструмента для составления регулярных выражений: и. (данные инструменты предоставлены в порядке рекомендации, качество и корректность их работы вне зоны ответственность сервиса Senler)

https://senler.ru/cabinet/botshare/1230502_c0f5a5457766fc24ea3ec55dd738cf46
Regex101
RegExr