> For the complete documentation index, see [llms.txt](https://docs.leadconverter.su/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.leadconverter.su/regulyarnye-vyrazheniya.md).

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

Регулярное выражение - это не страшная абракадабра на эльфийском языке, а очень мощный инструмент, позволяющий проверить, соответствует ли введенная пользователем строка нужному нам формату :sunglasses:

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

{% hint style="warning" %}
**Важно!**

Все нижеприведенные значения проверяют **СТРОГОЕ СООТВЕТСТВИЕ** текста в строке.&#x20;

Это значит, что кроме этих символов в строке **НЕ** может быть других символов!&#x20;
{% endhint %}

Иногда возникает необходимость проверить, содержится ли текст в нужном формате в строке, но кроме него нужно разрешить и другие символы. Например, бот должен принять ссылку на домашку и краткое описание. Текст без ссылки нужно считать некорректным.&#x20;

В таком случае просто уберите символ ^ в начале регулярки и символ $ в конце, и регулярное выражение начнет проверять, СОДЕРЖИТСЯ ЛИ текст нужного формата.&#x20;

{% hint style="info" %}
&#x20;В поле с регуляркой справа есть символ для копирования одним кликом
{% endhint %}

<table><thead><tr><th width="512.1573815876583">Регулярка</th><th>Описание</th></tr></thead><tbody><tr><td><pre><code>^(0?[1-9]|[12][0-9]|3[01]).(0?[1-9]|1[012]).((19|20)[0-9]{2})$
</code></pre></td><td><p><mark style="color:orange;">Дата</mark> в формате dd mm yyyy</p><p>Разделитель - любой символ, например:</p><p>01.01.2035</p><p>31/12/2000</p></td></tr><tr><td><pre><code>^([01]?[0-9]|2[0-3]):[0-5][0-9](:[0-5][0-9])?$
</code></pre></td><td><p><mark style="color:orange;">Время</mark></p><p>Формат</p><p>ЧЧ:ММ</p><p>ЧЧ:ММ:СС</p></td></tr><tr><td><pre><code>^\d+$
</code></pre></td><td><p><mark style="color:orange;">Целое число</mark></p><p>Любое целое положительное число.</p></td></tr><tr><td><pre><code>^-?\d+$
</code></pre></td><td><p><mark style="color:orange;">Целое число</mark></p><p>Может быть как положительным, так и отрицательным</p></td></tr><tr><td><pre><code>^(1[8-9]|[2-8][0-9]|9[0-5])$
</code></pre></td><td><p><mark style="color:orange;">Возраст от 18 до 95 лет</mark></p><p>Целое число от 18 до 95</p></td></tr><tr><td><pre><code>^((8|\+7)[\- ]?)?(\(?\d{3}\)?[\- ]?)?[\d\- ]{7,10}$
</code></pre></td><td><mark style="color:orange;">Мобильный номер телефона (Россия)</mark></td></tr><tr><td><pre><code>.+@.+\..+
</code></pre></td><td><mark style="color:orange;">Почта</mark><br>example@domain.com</td></tr><tr><td><pre><code>https?:\/\/[A-zА-яЁё0-9][A-zА-яЁё0-9\-]+\.[A-zА-яЁё0-9\-]+
</code></pre></td><td>Текст <mark style="color:orange;">содержит</mark> ссылку</td></tr><tr><td><pre><code><strong>^[!@#$%^&#x26;*()_\-=+\\\/:;'"`&#x3C;>,.№\s?\[\]{}A-zА-яЁё0-9~]+$
</strong></code></pre></td><td>Текст <mark style="color:orange;">не содержит</mark> смайлов</td></tr><tr><td><pre><code>^((8|\+374|\+994|\+995|\+375|\+7|\+380|\+38|\+996|\+998|\+993)[\- ]?)?\(?\d{3,5}\)?[\- ]?\d{1}[\- ]?\d{1}[\- ]?\d{1}[\- ]?\d{1}[\- ]?\d{1}(([\- ]?\d{1})?[\- ]?\d{1})?$
</code></pre></td><td>Мобильные и городские номера России и СНГ.<br><br>Армения (+374), Азербайджан (+994) Грузия (+995) <br>Беларусь (+375) <br>Россия/Казахстан (+7) Украина (+380, +38) Киргизия (+996) Узбекистан (+998) Туркмения (+993) Узбекистан (+998)</td></tr><tr><td><pre><code>^[A-Za-z\d_]{5,32}$
</code></pre></td><td>Никнейм в Telegram</td></tr><tr><td><pre><code>^(https?:\/\/)?([\w-]{1,32}\.[\w-]{1,32})[^\s@]*$
</code></pre></td><td>Проверка на ссылку</td></tr></tbody></table>

Протестировать, подходит ли вам это регулярное выражение, можно на сайте [regex101.com](https://regex101.com).

![Пссс, если нажмёшь на картинку - она увеличится :)](/files/ysmXUnSyQHe0IEyKRlhu)

В верхнем поле вставляем регулярку, в нижнем пишем свои значения. То, что подсвечивается - попало под шаблон. Строки 4 и 5 не подсвечиваются, следовательно, не подходят под регулярку.

{% hint style="success" %}
Если вам необходима специфичная регулярка, но вы не знаете, как её составить - [напишите в поддержку](/kak-zadat-vopros-v-podderzhku.md).

Мы всегда рады прийти на помощь! :relaxed:
{% endhint %}
