ChatCrawlerпоиск по публичному Telegram Открыть приложение
P

Python Community | Chat

сообщение · 2026-01-26 16:54 UTC
I
🧠 Продвинутые советы по работе с Regex в Python Всегда компилируй регулярные выражения. Это ускоряет работу при многократном использовании, делает код чище и упрощает тестирование. import re RE_EMAIL = re.compile(r"\b[A-Z0-9._%+-]+@[A-Z0-9.-]+\.[A-Z]{2,}\b", re.I) emails = RE_EMAIL.findall(text) Используй raw-строки и re.VERBOSE, чтобы regex был читаемым, а не выглядел как случайный набор символов. RE_DATE = re.compile(r""" \b (?P\d{4})-(?P0[1-9]|1[0-2])-(?P0[1-9]|[12]\d|3[01]) \b """, re.VERBOSE) Если группа не нужна в выводе - делай её non-capturing (?:...). Это уменьшает расходы памяти и путаницу с индексами групп. re.findall(r"(?:https?://)?(?:www\.)?example\.com/\S+", text) Используй правильные якоря. \A и \Z безопаснее для валидации, чем ^ и $, которые зависят от флага MULTILINE. re.match(r"\A\d+\Z", "123\n") Контролируй код и ставь ограничения. Бесконтрольный .* — частая причина зависаний и ReDoS. re.search(r"]{0,2000}>", html) Lookahead и lookbehind позволяют искать текст без захвата. Это мощный инструмент для точных выборок. m = re.search(r"(? @Python_Community_ru
888 ·

Все сообщения за 26 января 2026 · Вся лента · оригинал в Telegram

Открыть в Telegram Каталог площадок Искать в ChatCrawler

Слепок открытой публичной ленты из поискового индекса ChatCrawler — «Google по публичному Telegram»; обновляется по мере обхода площадки. Время — UTC.

Только публичный контент, официальный API Telegram. О проекте · Вопросы · Чего мы не делаем · Убрать страницу из выдачи · Каталог