Регулярно требуется преобразовать какой-либо текст в максимально совместимый текст для URL, имени файла, имени объекта в каком-то софте и тд. Требования совместимости простые: в тексте должны быть только допустимые символы. Обычно это a-z, 0-9 и "_" или "-". То есть, только прописные буквы латинского алфавита и цифры (как пример).
Допустим, нам нужно название статьи в блоге преобразовать в slug для добавления его в URL этой статьи. Как это лучше всего сделать?
В Django по умолчанию есть готовая функция slugify для таких случаев.
Но я её никогда не использую. Почему? Потому что её недостаточно!
Приведём пример
>>> from django.utils.text import slugify
>>> slugify('This is a Title')
'this-is-a-title'
Пока всё отлично
>>> slugify('This is a "Title!"')
'this-is-a-title'
Спец символы удалились, всё хорошо.
>>> slugify('Это заголовок статьи')
''
Вот и приехали 😢. Если текст не английский то буквы просто игнорируются. Можно это поправить
>>> slugify('Это заголовок статьи', allow_unicode=True)
'это-заголовок-статьи'
Но тогда мы не вписываемся в условие. У нас появилась кириллица в тексте.
Так как я часто пишу сайты для русскоязычных пользователей эта проблема весьма актуальна. Я не использую стандартную функцию и всегда пишу свою.
Оригинал я не беру в расчёт и пишу полностью свою функцию. И так, по порядку:
🔸1. Исходный текст:
>>> text = 'Мой заголовок №10 😁!'
Взял специально посложней со специальными символами.
🔸2. Транслит
Необходимо сделать транслит всех символов в латиницу. Здесь очень выручает библиотека unidecode. Помимо простого транслита кириллицы в латиницу она умеет преобразовывать спец символы и иероглифы в текстовые аналоги.
from unidecode import unidecode
>>> unidecode("Ñ Σ ® µ ¶ ¼ 月 山")
'N S (r) u P 1/4 Yue Shan'
Очень крутая библиотека, советую👍
В нашем случае получаем такое преобразование:
>>> text = unidecode(text)
>>> print(text)
'Moi zagolovok No. 10 !'
Отличный транслит. Смайл просто удалился, хотя я ждал что-то вроде :). Ну и ладно, всë равно невалидные символы.
А еще наш код уже поддерживает любой язык, будь то хинди или корейский.
🔸4. Фильтр символов
Unidecode не занимается фильтрацией по недопустимым символам. Это мы делаем в следующем шаге через regex. Просто заменим все символы на "_" если они вне указанного диапазона.
>>> text = re.sub(r'[^a-zA-Z0-9]+', '_', text)
>>> print(text)
'Moi_zagolovok_No_10_'
Символ "+" в паттерне выручает когда несколько недопустимых символов идут рядом. Все они заменяются на один символ "_".
🔸5. Slugify
Осталось удалить лишние символы по краям и сделать нижний регистр
>>> text = text.strip('_').lower()
>>> print(text)
'moi_zagolovok_no_10'
Получаем отличный slug! 😎
🌎 Полный код в виде функции.
______________
PS. Проверку что в строке остался хоть один допустимый символ я бы вынес в отдельную функцию.
#libs#tricks#django
⚡️САД: Ратна морнарица САД признала губитак стратешке извиђачке БпЛ MQ-4 Triton вредне око 200 милиона долара, уз тврдњу да летелица није оборена већ да је пала услед квара или инцидента током лета.
MQ-4 Triton представља тешку извиђачку БпЛ велике аутономије лета, која је развијена за надзор широких морских зона и откривање површинских циљева (ISR); ТТК: плафон лета око 17 км, аутономија више од 24 часа, брзина до 575 км/ч, сензорски пакет за радарско и оптоелектронско осматрање великих акваторија.
→ Линк: /t.me/borbeni_efektivi
→ Извор: /t.me/borbeni_efektivi
🪖#САД〣#USNavy〣#MQ4Triton〣#БпЛ〣#ISR〣#април_2026
🇷🇸https://t.me/borbeni_efektivi
🇺🇸🇮🇱⚔🇮🇷🛩️The Watchful Eye Over the Gulf
✍🏽By Red Nile Media | Geopolitical Analysis
A U.S. Navy MQ-4C Triton spy drone has been conducting high-altitude surveillance over the Persian Gulf and Strait of Hormuz, flying out of the UAE—a subtle but powerful signal amid rising U.S.–Iran tensions. Far from routine, this deployment follows a familiar escalation playbook: persistent intelligence gathering, psychological pressure, and strategic positioning that often precede larger moves.
🔹 Why the shift from Qatar to the UAE? What message is being sent to Tehran? And how does this fit into past confrontation patterns in the region?
🔗Read the full analysis:
📡@rednile12
Geopolitics | Multipolarity | Sovereignty | Strategic Reality
#Iran#USA#UAE#Qatar#PersianGulf#Geopolitics#MilitaryIntelligence#MiddleEast#RedSea#ISR#MQ4C#RedNileMedia
🇺🇸🇮🇱⚔🇮🇷🛩️The Watchful Eye Over the Gulf
✍🏽By Red Nile Media | Geopolitical Analysis
A U.S. Navy MQ-4C Triton spy drone has been conducting high-altitude surveillance over the Persian Gulf and Strait of Hormuz, flying out of the UAE—a subtle but powerful signal amid rising U.S.–Iran tensions. Far from routine, this deployment follows a familiar escalation playbook: persistent intelligence gathering, psychological pressure, and strategic positioning that often precede larger moves.
🔹 Why the shift from Qatar to the UAE? What message is being sent to Tehran? And how does this fit into past confrontation patterns in the region?
🔗Read the full analysis:
📡@rednile12
Geopolitics | Multipolarity | Sovereignty | Strategic Reality
#Iran#USA#UAE#Qatar#PersianGulf#Geopolitics#MilitaryIntelligence#MiddleEast#RedSea#ISR#MQ4C#RedNileMedia
⚡️Западни војни експерти* сматрају да би Русија могла имати обавештајну улогу у уништењу "летећег радара" E-3G Sentryкоји је понос Војске САД
Они су признали да је губитак AWACS платформе озбиљан удар на америчке способности ваздушног надзора, управљања ловачком авијацијом и заштите од непријатељских авиона и ракетних система.
Према њиховим речима, E-3 обезбеђује надзор над до 310.000 km² бојишта, од тла до стратосфере, и може истовремено пратити око 600 ваздушних али и копнених циљева, укључујући авионе, ракете, веће БпЛ па и тенкове. Америчка флота броји 17 авиона E-3, што ову платформу чини једним од кључних чворова командно-осматрачке архитектуре.
Посебно је значајна оцена да јеE-3 наводно могао открити дрон Shahed лансиран са удаљености од 320 km чак 85 минута раније него копнени радар.
Наводи се да летелица није уништена у ваздуху, већ на тлу, што је оцењено као тежак пропуст у заштити снага. Истовремено се износи претпоставка да је Иран могао имати руску помоћ у виду географских координата и сателитских снимака за прецизно одређивање циља.
Закључак аналитичара је да Иран селективно гађа ограничен број високовредних циљева — радаре, авионе-цистерне и AWACS — уз реалан оперативни ефекат.
* Седрик Лихтон — CNN-ов војни аналитичар и пензионисани пуковник Ратног ваздухопловства САД; наведен је и као некадашњи члан посаде на AWACS летелици,Питер Лејтон — пензионисани официр Ратног ваздухопловства Аустралије и сарадник Griffith Asia Institutea, Кели Грјеко — аналитичарка Stimson Centra.
→ Извор:/t.me/borbeni_efektivi
→ Линк: /t.me/borbeni_efektivi
🪖#САД〣#AWACS〣#E3〣#Иран〣#Русија〣#ваздухопловство〣#ISR#Ракете#радар#губици
🇷🇸https://t.me/borbeni_efektivi
⚡️#ВојскаСрбије На фото све виде модели извиђачких беспилотних летелица DJI Matrice — Matrice 30T (горе) и Matrice 300 RTK/350 (доле), пратећи командно-управљачки уређаји и полимерни кофери за чување и транспорт, највероватније из састава ИЧ кбат 2.бригаде КОВ-а. (* април 2026)
→ Извор: скришнот РТВ КВ (Краљево)
→ Текст: /t.me/borbeni_efektivi
🪖#DJI〣#Matrice300RTK〣#Matrice30T〣#БпЛ〣#Дронови〣#ISR〣#Опрема〣#Логистика〣#Технологија
🇷🇸https://t.me/borbeni_efektivi
⚡️Амерички СпН (Combat Search and Rescue) по први пут употребили квантни магнетометар "Ghost Murmur" за даљинско лоцирање мете помоћу фреквенције срца?
Приликом лоцирања члана посаде F-15E Strike Eagle који је оборен над Ираном, спекулише се да је по први пут своју борбену примену имао систем за детекцију и издвајање магнетокардиографског сигнала човека из позадинског шума — Ghost Murmur.
Шта је Ghost Murmur?
Наиме, систем региструје изузетно слаб МКГ [магнетокардиографски] сигнал који потиче од рада срца, а чија је амплитуда вишеструко нижа од геомагнетне позадине. Зато је кључни технички услов не само осетљив сензор, већ и висококвалитетна алгоритамска филтрација (ВИ), способна да издвоји периодични биолошки образац конкретног лица.
📌 Наводи се да је пустињско окружење, са ниским антропогеним електромагнетним сметњама и минималним присуством других биосигнала, створило готово идеалан амбијент за реалну примену овог система. Спомиње се домет од 40 миља / око 64 км, када је систем интегрисан на UH-60 Black Hawk, као и могуће његове адаптације за F-35 Lightning II.
→ Линк: /t.me/borbeni_efektivi
→ Извор: /t.me/borbeni_efektivi
🪖#ЦИА〣#GhostMurmur〣#F15E〣#Иран〣#Квантна_магнетометрија〣#NV_центри〣#ISR〣#САР_операције#технологија#новитети
🇷🇸https://t.me/borbeni_efektivi
⚡️#Сукоб САД/Иран—И док председник САД Доналд Трамп јавно говори о „успешним“ контактима са Ираном, дотле оперативни индикатори упућују на паралелну припрему за интензивирање кампање.....
Повећава се број платформи тактичке авијације F-16 и F-35, врши се релокација F-35C ради подршке копненој компоненти, док ISR активности дуж иранског стратегијског обода и приобаља Персијског и Оманског залива бележе пораст; у ваздушној слици присутни су и турски E-7T в.#карта.
→ Извор: Рибар
→ Линк: /t.me/borbeni_efektivi
🪖#САД〣#Иран〣#Donald_Trump〣#F16〣#F35〣#F35C〣#ISR〣#E7T〣#авијација〣#операције
🇷🇸https://t.me/borbeni_efektivi