0.7.2 теперь сборщик команд имеет все типы

This commit is contained in:
Verum
2025-02-24 05:57:04 +07:00
parent d10a405c59
commit 899ff5aaac
8 changed files with 115 additions and 13 deletions

View File

@@ -4,3 +4,4 @@
# Экспортирование модулей во внешние слои проекта
from .email_valid import *
from .username import *
from .url_valid import *

View File

@@ -0,0 +1,24 @@
# BotLibrary/validators/url_valid.py
# Валидатор ссылок на регулярных выражениях
import re
# Настройка экспорта из этого модуля
__all__ = ("valid_url",)
# Функция определения является ли строка ссылкой
def valid_url(url: str) -> bool:
"""
Проверяет, является ли строка валидной ссылкой (URL).
:param url: Строка для проверки.
:return: True, если строка является валидным URL, иначе False.
"""
url_pattern = re.compile(
r'^(https?://)?' # Протокол (http или https, необязателен)
r'([a-zA-Z0-9-]+\.)+[a-zA-Z]{2,}' # Домен
r'(:\d+)?' # Порт (необязателен)
r'(/[-a-zA-Z0-9@:%_+.~#?&//=]*)?$' # Путь, параметры и фрагменты
)
return bool(url_pattern.match(url))